参考
本文参考自《数据结构与算法分析C++描述》第三版,作者Mark Allen Weiss
1.表
1)链表可以解决什么问题?其一般思想是?
- 表的数组实现带来的问题 - 数组实现printList线性时间,findKth 常数时间,但插入和删除操作在整个表中发生时,时间开销最坏的情况是线性的O(N),数组就不合适。 
- 链表一般思想 - 为避免插入和删除带来的线性开销,允许表可以不连续存储,否则表的部分或全部都要整体移动。 - 下图表示了链表的一般性思想:  - 以及插入和删除方法的一般性思想:   - 当删除最后一项时,需要找到最后一项前面的项,才能去更新其next 链接到NULL,需要O(N),如果双向链表则只需要O(1)  -  
