亲宝软件园·资讯

展开

Java面向对象之数组和链表 Java面向对象基础知识之数组和链表

一指流砂~ 人气:0
想了解Java面向对象基础知识之数组和链表的相关内容吗,一指流砂~在本文为您仔细讲解Java面向对象之数组和链表的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Java面向对象,Java数组,Java链表,下面大家一起来学习吧。

数组的优点:

数组的缺点:

链表的优点:

比如:

单链表,每个元素除了存储本身的值外,还存储了前驱的引用,也就是存储了前驱所在的内存地址信息。

双链表就是不仅存储了前驱的引用还存储了后继的引用.

链表的缺点:

内存中的存储形式可以分为连续存储和离散存储两种。因此,数据的物理存储结构就有连续存储和离散存储两种,它们对应了我们通常所说的数组和链表。

因为数组是连续存储的,在操作数组中的数据时就可以根据离首地址的偏移量直接存取相应位置上的数据,但是如果要在数据组中任意位置上插入一个元素,就需要先把后面的元素集体向后移一位为其空出存储空间。

与之相反,链表是离散存储的,所以在插入一个数据时只要申请一片新空间,然后将其中的连接关系做一个修改就可以,但是显然在链表上查找一个数据时就要逐个遍历了。

考虑以上的总结可见,数组和链表各有优缺点。在具体使用时要根据具体情况选择。当查找数据操作比较多时最好用数组;当对数据集中的数据进行添加或删除比较多时最好选择链表。

数组就像身上编了号站成一排的人,要找第10个人很容易,根据人身上的编号很快就能找到。但插入、删除慢,要望某个位置插入或删除一个人时,后面的人身上的编号都要变。当然,加入或删除的人始终末尾的也快

链表就像手牵着手站成一圈的人,要找第10个人不容易,必须从第一个人一个个数过去。但插入、删除快。插入时只要解开两个人的手,并重新牵上新加进来的人的手就可以。删除一样的道理。

总结:

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注的更多内容!

加载全部内容

相关教程
猜你喜欢
用户评论