黑马程序员技术交流社区

标题: 面试题:通过LinkedList模拟栈数据结构 [打印本页]

作者: 沙迦    时间: 2015-4-24 23:33
标题: 面试题:通过LinkedList模拟栈数据结构
/*
* 面试题:通过LinkedList模拟栈数据结构
* 要模拟的内容的特点:
*                 先进后出。
*
* 通过LinkedList模拟栈数据结构:
*                 它的意思是说,你有一个LinkedList可以用,但是,你需要自己定义一个栈集合。
*                 对外提供获取和添加功能。
*/
public class LinkedListTest {
        public static void main(String[] args) {
                // LinkedList link = new LinkedList();
                // link.addFirst("hello");
                // link.addFirst("world");
                // link.addFirst("java");
                // Iterator it = link.iterator();
                // while (it.hasNext()) {
                // String s = (String) it.next();
                // System.out.println(s);
                // }

                // 创建集合对象
                MyStack ms = new MyStack();

                // 创建并添加元素
                ms.add("hello");
                ms.add("world");
                ms.add("java");

                // 获取
                // System.out.println(ms.get(0));
                // System.out.println(ms.get(1));
                // System.out.println(ms.get(2));
                // System.out.println(ms.get(3));

                for (int x = 0; x < ms.size(); x++) {
                        String s = (String) ms.get(x);
                        System.out.println(s);
                }
        }
}
/*
* 自定义栈集合。
*/
public class MyStack {
        private LinkedList link;

        public MyStack() {
                link = new LinkedList(); //底层调用LinedList方法
        }

        public void add(Object obj) {
                link.addFirst(obj);//底层调用LinedList类First方法

        }

        public Object get(int index) {
                return link.get(index);//底层调用LinkedList类get方法
                //根据传入的索引获取该索引出的元素
        }

        public int size() {
                return link.size();
        }
}
作者: 奋斗的黑马    时间: 2015-4-25 00:24
可以改一下,用for循环遍历。。试试
作者: 沙迦    时间: 2015-4-25 01:09
奋斗的黑马 发表于 2015-4-25 00:24
可以改一下,用for循环遍历。。试试

谢谢指教
作者: kayaking    时间: 2015-4-25 08:30
学习了~
作者: smartisan    时间: 2015-4-25 09:01
受教了~~~
作者: cody    时间: 2015-4-25 13:13
还没学到那
作者: richaled    时间: 2015-4-25 13:29
学习了。。
作者: 莫里亚蒂    时间: 2015-4-25 14:11
哇,这个真的很不错,不过我们现在还没学到这儿,先看一遍当做预习,谢谢楼主啊O(∩_∩)O~
作者: dengxing    时间: 2015-4-25 19:33
哇!!赞赞赞!!!




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