标签:
链表与数组是java中更多复杂数据结构的实现基础。
本例亦可作为其它泛型数据结构的实现模板。
import java.util.Scanner;
public class StackList<Item> {
private Note first;
private int N;
private class Note{
private Item element;
private Note next;
}
public void push(Item element){
Note newFirst = new Note();
newFirst.element = element;
newFirst.next =first;
first = newFirst;
N++;
}
public Item pop(){
Note OldFirst;
OldFirst = first;
first = first.next;
N--;
return OldFirst.element;
}
public int size(){
return N;
}
public boolean isEmpty(){
return first ==null;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
StackList<String> st = new StackList<String>();
Scanner scanner = new Scanner(System.in);
String line = scanner.nextLine();
String[] str=line.split("\\s+");
for(String element:str){
if (!element.equals("-")) st.push(element);
else System.out.println(st.pop());
//System.out.print(st.size());
}
scanner.close();
}
}
对于像我一样的java入门者,请注意例子中的element.equls("-"),如果改为 element != "-",将无法获得预知的结果。
运行结果:
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:
原文地址:http://blog.csdn.net/flushhj/article/details/47174763