목표
코드
Stack
import java.util.Scanner;
public class LinkedStack<Integer> {
private static SinglyLinkedList<java.lang.Integer> list = new SinglyLinkedList<>(); // an empty list
public LinkedStack() { } // new stack relies on the initially empty list
public static int size() { return list.size(); }
public static boolean isEmpty() { return list.isEmpty(); }
public static void push(java.lang.Integer element) { list.addFirst(element); }
public static java.lang.Integer top() { return list.first(); }
public static java.lang.Integer pop() { return list.removeFirst(); }
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (true) {
System.out.println("-----------------------------------");
System.out.println("0 = End, 1 = Push, 2 = Pop, 3 = Top");
System.out.println("-----------------------------------");
System.out.print("Case : ");
int Case = sc.nextInt();
if (Case == 0) {
System.out.println("Program is End!");
break;
}
else if (Case == 1) {
System.out.print("Element : ");
int tmpi = sc.nextInt();
java.lang.Integer ele = tmpi;
push(ele);
}
else if (Case == 2) {
if(isEmpty()) System.out.println("No element in Stack");
else System.out.println(pop());
}
else {
if(isEmpty()) System.out.println("No element in Stack");
else System.out.println(top());
}
}
sc.close();
}
}
Queue
import java.util.Scanner;
public class LinkedQueue<Integer> {
private static SinglyLinkedList<java.lang.Integer> list = new SinglyLinkedList<>();
public static int size() {
return list.size();
}
public static boolean isEmpty() {
return list.isEmpty();
}
public static void enqueue(java.lang.Integer element) {
list.addLast(element);
}
public static java.lang.Integer first() {
return list.first();
}
public static java.lang.Integer dequeue() {
return list.removeFirst();
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (true) {
System.out.println("--------------------------------------------");
System.out.println("0 = End, 1 = Enqueue, 2 = Dequeue, 3 = First");
System.out.println("--------------------------------------------");
System.out.print("Case : ");
int Case = sc.nextInt();
if (Case == 0) {
System.out.println("Program is End!");
break;
} else if (Case == 1) {
System.out.print("Element : ");
int tmpi = sc.nextInt();
java.lang.Integer ele = tmpi;
enqueue(ele);
} else if (Case == 2) {
if (isEmpty()) System.out.println("No element in Queue");
else System.out.println(dequeue());
} else {
if (isEmpty()) System.out.println("No element in Queue");
else System.out.println(first());
}
}
sc.close();
}
}
실행화면
파일
'Coding' 카테고리의 다른 글
[BOJ][ZOAC 2019]18243번 - Small World Network (0) | 2019.12.30 |
---|---|
[BOJ][ZOAC 2019]18238번 - ZOAC 2 (0) | 2019.12.30 |
2018.04.03 1st Semester 한양대 에리카 자료구조 과제 DoublyLinkedList (0) | 2018.04.18 |
2018.03.28 1st Semester 한양대 에리카 자료구조 과제 SinglyLinkedList (0) | 2018.03.29 |
2017.10.18 StudentManager (8) | 2017.10.20 |