Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added StaticQueueinjava.class
Binary file not shown.
121 changes: 121 additions & 0 deletions StaticQueueinjava.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
class Queue {
private static int front, rear, capacity;
private static int queue[];

Queue(int c)
{
front = rear = 0;
capacity = c;
queue = new int[capacity];
}

// function to insert an element
// at the rear of the queue
static void queueEnqueue(int data)
{
// check queue is full or not
if (capacity == rear) {
System.out.printf("\nQueue is full\n");
return;
}

// insert element at the rear
else {
queue[rear] = data;
rear++;
}
return;
}

// function to delete an element
// from the front of the queue
static void queueDequeue()
{
// if queue is empty
if (front == rear) {
System.out.printf("\nQueue is empty\n");
return;
}

// shift all the elements from index 2 till rear
// to the right by one
else {
for (int i = 0; i < rear - 1; i++) {
queue[i] = queue[i + 1];
}

// store 0 at rear indicating there's no element
if (rear < capacity)
queue[rear] = 0;

// decrement rear
rear--;
}
return;
}

// print queue elements
static void queueDisplay()
{
int i;
if (front == rear) {
System.out.printf("\nQueue is Empty\n");
return;
}

// traverse front to rear and print elements
for (i = front; i < rear; i++) {
System.out.printf(" %d <-- ", queue[i]);
}
return;
}

// print front of queue
static void queueFront()
{
if (front == rear) {
System.out.printf("\nQueue is Empty\n");
return;
}
System.out.printf("\nFront Element is: %d", queue[front]);
return;
}
}

public class StaticQueueinjava {

// Driver code
public static void main(String[] args)
{
// Create a queue of capacity 4
Queue q = new Queue(4);

// print Queue elements
q.queueDisplay();

// inserting elements in the queue
q.queueEnqueue(20);
q.queueEnqueue(30);
q.queueEnqueue(40);
q.queueEnqueue(50);

// print Queue elements
q.queueDisplay();

// insert element in the queue
q.queueEnqueue(60);

// print Queue elements
q.queueDisplay();

q.queueDequeue();
q.queueDequeue();
System.out.printf("\n\nafter two node deletion\n\n");

// print Queue elements
q.queueDisplay();

// print front of the queue
q.queueFront();
}
}
Binary file added TowerOfHanoi.class
Binary file not shown.
20 changes: 20 additions & 0 deletions TowerOfHanoi.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
public class TowerOfHanoi {
static int count=0;
static void move(int disk,char src , char dist, char spare){
if(disk==1||disk==0) {
//System.out.println("move disk" + disk + " from " + src + " to " + dist);
count+=1;
}
else{
move(disk-1,src,spare,dist);
//System.out.println("move disk"+disk+" from "+src+" to "+dist);
count+=1;
move(disk-1,spare,dist,src);
}
}

public static void main(String[] args) {
move(100,'A','B','C');
System.out.println("count"+count);
}
}