
数据结构
文章平均质量分 57
wangchengxi03
这个作者很懒,什么都没留下…
展开
-
实现基本数据结构之二分搜索树
【代码】实现基本数据结构之二分搜索树。原创 2022-10-15 20:37:58 · 192 阅读 · 0 评论 -
实现基本数据结构之链表
因为链表不是对称的,而队列需要一端添加元素,一端取出元素,但可以用一个尾指针指向链表尾部,头指针作为队首(因为从尾指针删除元素时间复杂度为O(N),而从头指针删除元素时间复杂度为O(1)),尾指针作为队尾,这里不使用虚拟头节点。可以发现普通队列所用时间较长,与循环队列和链表队列相差百倍,是因为普通队列的出队的时间复杂度为O(n),另外两个队列出队的时间复杂度为O(1)。在上面的链表实现过程中,向链表头插入元素和向链表指定位置插入元素逻辑上有些区别,可以用一个虚拟头节点来指向头节点,使两者逻辑一样。原创 2022-10-08 15:26:10 · 291 阅读 · 0 评论 -
实现基本数据结构之队列
上面实现的队列其中出队的时间复杂度为O(n),因为它是将动态数组的第一个元素删除并返回,还需要将后面的元素都向前移动一位。但循环队列使用front指针指向队首,tail指针指向队尾来时出队和入队的时间复杂度都为O(1)。当front==tail,队列为空,当(tail + 1) % capacity == front队列为满(浪费了一个空间以此来区分队列为空和队列为满时判断条件不一样)。原创 2022-10-01 21:38:49 · 171 阅读 · 0 评论 -
实现基本数据结构之栈
【代码】实现基本数据结构之栈。原创 2022-10-01 16:16:05 · 216 阅读 · 0 评论 -
实现基本数据结构之数组
数组原创 2022-10-01 14:49:59 · 427 阅读 · 0 评论