1.数组
数组是通过下标查找的,因此查询效率高,但是在插入删除时,需要维护这个下标,因此插入删除效率低
2.单向链表
单向链表就是为了克服这样的缺点,因为其每个数据单元由两部分构成。第一部分为地址信息,用于指向下一块数据单元。第二部分为数据。在插入删除时,只需要修改上一个数据单元指向地址,并且让新插入的数据单元指向地址指向下一个数据单元即可,但是查询时需要从头开始遍历。
3.双向链表
与单向链表不同的时,双向链表的数据单元多了一个指向前一个数据单元的地址信息,因此遍历时可以从尾到头遍历。其第一个数据单元指向前一个数据单元的地址信息为null,最后一个数据单元指向后一个数据单元的地址信息为null。
4.双向内循环链表
将双向链表的第一个数据单元指向前一个数据单元的地址信息设为最后一个数据单元,将最后一个数据单元指向后一个数据单元的地址信息设为第一个数据单元。