03月21, 2019

【数据结构】数组和链表

【数据结构】数组

数组是我们在编程中最常用的数据结构之一,存放一组数据,有以下几个特点:

  1. 连续:顺序存储。
  2. 定长:一旦定义后,长度不可变。
  3. 根据下标可直接访问到这个下标的元素。
  4. 不适合做插入删除等操作。

老司机要开车了:打个比较形象的比方,停车场每一排都可以看做是一个数组,定长、连续,停车的时候,假如要插入停车,那么你需要把后面的每个车都要移动一个位置,所以不适合做插入停车,直接追加倒是很快。

python中比较类似数组的数据结构就是list了,顺序存储,可以根据下标直接访问元素,但list长度是可变的。可以看做是一个动态的数组。

【数据结构】链表

链表同样是我们最常用的数据结构之一,也是存放一组数据,有以下几个特点:

  1. 可以不连续。
  2. 不定长
  3. 无法根据下标去直接访问,必须从头一个一个往后面找
  4. 适合做插入删除等操作。

老司机开车:不知道大家小时候玩过曲别针木有,一串曲别针就是一个链表,想在中间加一个曲别针,把链表从中间拆了,然后再连起来就可以了,只需要操作一个位置,不像数组,插入的时候要动后续所有的,并且也不用事先声明要多少曲别针,想怎么加就怎么加(不定长)。

本文链接:http://www.yuqiaochuang.com/post/【数据结构】数组和链表.html

-- EOF --

Comments

""