Category Archives: Snippets

Implementing Graph Traversing Algorithms in Java

Graph traversal is the problem of visiting all the nodes in a graph in a particular manner, updating and/or checking their values along the way. There are two methods for graph traversal, they are as follows.

  1. Depth-first search: DFS visits the child nodes before visiting the sibling nodes; that is, it traverses the depth of any particular path before exploring its breadth.
  2. Breadth-first search: FS visits the parent nodes before visiting the child nodes.
Continue reading Implementing Graph Traversing Algorithms in Java

Implementing Circular Queue in Java with Arrays

A circular queue is an abstract data type that contains a collection of data which allows addition of data at the end of the queue and removal of data at the beginning of the queue. Circular queues have a fixed size.

Circular queue follows FIFO principle. Queue items are added at the rear end and the items are deleted at front end of the circular queue.

Continue reading Implementing Circular Queue in Java with Arrays

Implementing Doubly Linked List in Java

doubly-linked list is a linked data structure that consists of a set of sequentially linked records called nodes. Each node contains two fields, called links, that are references to the previous and to the next node in the sequence of nodes.

DLL
A doubly-linked list whose nodes contain three fields: an integer value, the link to the next node, and the link to the previous node.

The two node links allow traversal of the list in either direction. Here is java implementation of DLL.

Continue reading Implementing Doubly Linked List in Java