-
Notifications
You must be signed in to change notification settings - Fork 0
/
StackUsingLL.java
101 lines (91 loc) · 2.49 KB
/
StackUsingLL.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
import java.util.Scanner;
import java.util.*;
public class StackUsingLL {
private class Node{
int data;
Node Link;
}
Node top;
public StackUsingLL() {
this.top = null;
}
public void push(int x){
Node temp = new Node();
temp.data = x;
temp.Link = top;
top = temp;
}
public boolean isEmpty(){
return top == null;
}
public int peek(){
if(!isEmpty()){
return top.data;
}
else{
System.out.println("Stack is empty!!");
return -1;
}
}
public void pop(){
if(top == null){
System.out.println("Stack Underflow!!");
return;
}
top = top.Link;
}
public void display(){
if(top == null){
System.out.println("Stack Underflow!!");
return;
}
else{
Node temp = top;
while(temp != null){
System.out.printf("%d -> ",temp.data);
temp = temp.Link;
}
}
}
public static void main(String[] args) {
// Stack<Integer> s = new Stack<>();
// Scanner sc = new Scanner(System.in);
// int ele =0;
// while(true){
// System.out.println("Enter your choice");
// System.out.println("1: Push\n2: Pop\n3: Display\n4: Exit\n ");
// int choice = sc.nextInt();
// switch (choice) {
// case 1:
// System.out.println("Enter the element: ");
// ele = sc.nextInt();
// s.push(ele);
// break;
// case 2:
// s.pop();
// System.out.println("top element popped");
// break;
// case 3:
// System.out.println(s);
// break;
// case 4:
// System.exit(0);
// break;
// default:
// break;
// }
// sc.close();
// }
StackUsingLL stack = new StackUsingLL();
stack.push(3);
stack.push(2);
stack.push(1);
stack.push(0);
stack.display();
System.out.println("Top element is : "+ stack.peek());
stack.pop();
stack.pop();
System.out.println("Stack after 2 POP operations : " );
stack.display();
}
}