java数据结构学习之数组

                                                           数组学习

 java中数组被当作 对象 来对待

 数组在计算机物理内存中是一组 连续 的内存地址, 数组被初始化的时候 大小固定, 数组扩容实际是重新创建一个更大的数组,将原来的数据复制到新数组中, 所以使用数组时最好预定义数组的大小

 数组的效率问题:

           无序数组的插入时间效率为O(1), 查找的效率为O(n), 

           有序数组的插入和查找的效率为O(logN), 

 关于顺序表 线性表 数组的区别 来源于https://blog.csdn.net/foreverhuylee/article/details/37813053

  1. 数组就是相同数据类型的元素按一定顺序排列的集合。

    一句话:就是物理上存储在一组联系的地址上。也称为数据结构中的物理结构。

  2. 线性表中数据元素之间的关系是一对一的关系,即除了第一个和最后一个数据元素之外,其它数据元素都是首尾相接的。

    一句话:线性表是数据结构中的逻辑结构。可以存储在数组上,也可以存储在链表上。

  3.  线性表的结点按逻辑次序依次存放在一组地址连续的存储单元里的方法。用顺序存储方法存储的线性表简称为顺序表。

    一句话:用数组来存储的线性表就是顺序表。

    总结:你被这几个概念混淆,是因为你没搞懂数据结构里的逻辑结构和物理存储结构。


    



猜你喜欢

转载自blog.csdn.net/weixin_38915596/article/details/80783044
今日推荐