黑马程序员技术交流社区

标题: 利用24号的视频实现栈 [打印本页]

作者: axing110    时间: 2014-10-24 22:51
标题: 利用24号的视频实现栈
利用今天跟新的视频,回顾了一下栈的知识和大家分享下吧,非常简单的栈
先讲一栈的原理:

栈在计算机中使用的频率很高,包括递归,函数都需要栈的支持,是一种非常重要的机制。
栈和对流有一点不一样,队列是双向的,栈是单向的。所以队列就像个茶杯一样,只能一边进出。
还有栈是后进先出的,最先进去的最后出来。
我就利用版主发的这个视频的只是写个栈吧


public class test_11 {

        public static void main(String[] args)  {
                LinkedList<String> list=new LinkedList<>();
                strack ss=new strack(list);
                ss.push("axing1");
                ss.push("axing2");
                ss.push("axing3");
                ss.push("axing4");
                ss.push("axing5");
                ss.push("axing6");
               
                System.out.println(ss.get());
                System.out.println(ss.count());
                System.out.println(ss.pop());
                System.out.println(ss.pop());
                System.out.println(ss.pop());
                System.out.println(ss.pop());
                System.out.println(ss.pop());
                System.out.println(ss.pop());
                System.out.println(ss.pop());
                System.out.println(ss.pop());
                System.out.println(ss.count());
               
               
        }
        
}
class  strack
{
        LinkedList<String> li;
        private int i;
        strack(LinkedList<String> li)
        {
                this.li=li;
        }
        public void push(String  s)
        {
                i++;
                li.add(s);
        }
        public String get()
        {
                if(i<=0)
                {
                        System.out.println("哥们栈空了,不要取了");
                          throw new RuntimeException("我没有元素了");
                }
            i--;
                return li.peekLast();
        }
        public String pop()
        {
                if(i<=0)
                {
                        System.out.println("哥们栈空了,不要取了");
                          throw new RuntimeException("我没有元素了");
                }
            i--;
                return li.pollLast();
        }
        public int count()
        {
               
                return i;
        }
}






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2