关于java LinkedList类 今天看了这个类,觉得这个类设计出来,没有发挥出链表的优点啊,尽管可能更安全了,这样的话链表还有什么意义呢?这个类有点鸡肋啊 还有就是迭代器为什么要分为外部和内部两种呢?各有什么好处呢?不解啊。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 链表插入和删除效率高。因为之用记录它的next和pre元素。查找时间慢,必须重first或last查起, 可是java提供的LinkedList类没有直接删除已知某的一个结点的方法啊。也只能根据结点的位置从头找到然后再删除,那样的话链表的优点就体现不出来了。 LinkedList的用途主要是当作Stack,Queue、Deque使用。 推荐LZ看下JAVA数据结构和算法这本书,写的挺好的 有道理,只不过如果知道要进行操作结点位置也就是线性表具体的第几个结点,那样的话线性表查找的速度是O(1)的,我主要是说这种情况,这样的话,LinkedList类就让人很不爽了。还有内部类实现的迭代器与独立的迭代器各有什么优点呢?我对这个相当不解啊。 你或许还没有真正理解链表,是因为你没有在内存与效率上面去看。 链表的在内存上分散的,在程序运行的时候读取肯定是比较慢的, 但相对来说,如果你在程序运行当中想对这个集合进行修改的话,链表无疑是最好的选择! 就比如说,如果你要用动态数组来一次倒序和用Linkedlist来一次倒序,你认为哪个又会更快了? 总而言之有这么一句话: 动态数组:读快改慢。 链表: 改快读慢。 怎么样用,就要看你的程序里面的数据是改的多还是不多咯! 问个基础问题。 问个很傻的问题,com.sum包要怎么调用 怎样清空JLIST中的数据? 请问谁会---文件内容替换编程 Jpay怎么使用? 关于黑白图像的灰度级效果显示,图像处理高手进来指点一二 新手求助(jdk1.4的问题) 谁能给我一个executeBath()的例子吗 最新java核心技术 上海哪有卖? SQL中数据库的附加问题求解!谢谢! 求一个可用于窗体应用程序(如QQ)的编辑器 自定义组件的UI实现时报IllegalAccessError错误
有道理,只不过如果知道要进行操作结点位置也就是线性表具体的第几个结点,那样的话线性表查找的速度是O(1)的,我主要是说这种情况,这样的话,LinkedList类就让人很不爽了。还有内部类实现的迭代器与独立的迭代器各有什么优点呢?我对这个相当不解啊。
链表的在内存上分散的,在程序运行的时候读取肯定是比较慢的,
但相对来说,如果你在程序运行当中想对这个集合进行修改的话,链表无疑是最好的选择!
就比如说,如果你要用动态数组来一次倒序和用Linkedlist来一次倒序,你认为哪个又会更快了? 总而言之有这么一句话: 动态数组:读快改慢。
链表: 改快读慢。
怎么样用,就要看你的程序里面的数据是改的多还是不多咯!