线性表3:跳表SkipList
链表的查询劣势
链表,即使是有序的链表,在插入、删除,查找之前都需要就行查找操作以确认操作位置。而查找过程只能通过遍历完成,使得很多时候,数据的操作都要有O(n)的时间复杂度。
链表优化
那么,我们能否构建一条快速通道,在元素小于目标元素的时候跳过大多数小于当前数据的元素,从而实现快速查找呢?
链表,即使是有序的链表,在插入、删除,查找之前都需要就行查找操作以确认操作位置。而查找过程只能通过遍历完成,使得很多时候,数据的操作都要有O(n)的时间复杂度。
链表优化
那么,我们能否构建一条快速通道,在元素小于目标元素的时候跳过大多数小于当前数据的元素,从而实现快速查找呢?
数组与链表在数据结构上是十分基础的,我们的一些其他的数据结构也使用到了这样的基础结构。
首先算法和数据结构是分不开的,数据结构是数据的组织方式,算法是数据的操作方式(也就是一组数据的操作方法和操作策略),数据结构是为算法服务的,算法要作用在特定的数据结构之上。
学习tomcat源码、tomcat性能优化或者找debug可能都需要将tomcat跑起来。这里使用idea调试tomcat项目。