๐Ÿ““ STUDY/JAVA

LinkedList ๋ฅผ ์ด์šฉํ•ด์„œ Stack ๊ตฌํ˜„

JuneBee 2022. 5. 18. 11:03
728x90
๋ฐ˜์‘ํ˜•
public class Node{
//๋…ธ๋“œ ํด๋ž˜์Šค
public String data;//๋ฐ์ดํ„ฐํ•„๋“œ
public Node link;
public Node(String data){
super();
this.data = data;
}
public Node(String data, Node link){
this(data);
this.link = link;}
@override
public String toString(){
return "Node [ data="+data+"link="+link+"]";

}
public class Stack{

private Node top; //๋ฆฌ์ŠคํŠธ์˜ ์‹œ์ž‘์ 
private void push(String data){
	Node newNode = new Node(data, top);
	top= newNode;
}
//isEmpty
public boolean isEmpty(){return top ==null;}
//pop
public String pop(){
if(!isEmpty){Node popNode = top; top = popNode.link; popNode.link = null; return popNode.data;}
else{System.out.println("invalid command. stack is empty...");return null;} }
//peek
public String pek(){
if(!isEmpty){return top.data;}
else{System.out.println("invalid command. stack is empty...");return null;}
@override
public String toString(){
StringBuilder sb - new StringBuilder();
sb.append("S (");
for(Node currNode = top; currNode != null; currNode == curNode.link){
sb.append(currNode.data).append(",");}
	if(!isEmpty()) sb.setlength(sb.length()-1); //๋งˆ์ง€๋ง‰comma ์ง€์šฐ๊ธฐ
sb.append(")");
 return sb.toString();
}
}
public class StackTest{
public static void main(String[] args){
Stack stack = new Stack();
System.out.println(stack.isEmpty());
statck.push("๋€จ๋€จ");
System.out.println(stack.peek());
System.out.println(statck.pop());
System.out.println(stack);
System.out.println(stack);
}
}
728x90
๋ฐ˜์‘ํ˜•