数据结构
文章平均质量分 81
风过无痕1110
个人开源项目:
https://github.com/tangyanbo/springmore/
java技术讨论群:
261502547
展开
-
单向链表
【链表】 是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer)。 由于不必须按顺序存储,链表在插入的时候可以达到O(1)的复杂度,比另一种线性表顺序表快得多, 但是查找一个节点或者访问特定编号的节点则需要O(n)的时间, 而顺序表相应的时间复杂度分别是O(㏒ n)和O(1)。 【单向链表】 是链表的一种,其特点是链表的链接方向是单向的,对链表的访...原创 2012-04-01 17:41:04 · 85 阅读 · 0 评论 -
栈
【栈】 是限定仅在表尾进行插入或删除操作的线性表 表尾称为栈顶,表头称为栈底 特点:后进先出 操作:1.推入push2.弹出pop 栈的数组实现 public class ArrayStack<E> { private List<E> list = new ArrayList<E>(); public boo...原创 2012-04-01 17:57:07 · 70 阅读 · 0 评论 -
散列表
【散列表】 它是用一个散列函数把关键字 映射到散列表中的特定位置。 在理想情况下,如果元素e 的关键字为k,散列函 数为f,那么e 在散列表中的位置为f (k)。要搜索关键字为k 的元素,首先要计算出f (k),然后看 表中f (k)处是否有元素。如果有,便找到了该元素。如果没有,说明该字典中不包含该元素。 在前一种情况中,如果要删除该元素,只需把表中f (k)位置置为空即可。在后一种情况中,可 ...原创 2012-04-06 11:25:51 · 84 阅读 · 0 评论