数据结构
#@21
这个作者很懒,什么都没留下…
展开
-
数据结构二叉树C代码
二叉树特性:二叉树的基本操作的花费时间是与树的高度成正比的,如果一颗n个结点二叉树是完全二叉树则其所有操作时间效率为O(lgn)。但如果由于插入顺序的原因导致一颗n个节点组成了线性链表,则其基本操作时间效率为O(n),也就是它的树高度为n。因此我们随机构成的n个节点二叉树期望高度为O(lgn),也就是红黑树(完全二叉树)原创 2024-09-06 17:07:19 · 337 阅读 · 0 评论 -
用C语言实现哈希表(散列表)
哈希表很受欢迎,因为它的基本操作速率都是很快的,假设冲突因子为a,则其基本操作效率为O(1+a),来看看它是怎么实现的吧代码如下(代码中解决哈希表键冲突方法采用的是链接法的除法散列法。链接法还有乘法散列法以及全域散列法。除了链接法之外还有开放寻址法。可以根据不同的要求选择适合的方法解决键冲突):。原创 2024-09-05 15:39:31 · 271 阅读 · 0 评论 -
用C语言实现链表
链表中的各对象按线性顺序存储,不同的是,链表的顺序是由各个对象里的指针决定的,链表为动态集合提供了一种简单而灵活的表示方法。链表有单向链表、双向链表和循环链表。以下代码是实现单向链表的部分重要的函数。原创 2024-09-04 14:50:08 · 273 阅读 · 0 评论 -
用C++实现队列模板类
队列:一个动态集合,插入操作称为入队,删除操作称为出队,特点是先进先出。原创 2024-09-03 15:43:28 · 359 阅读 · 0 评论 -
用C++实现栈的类模板
在栈中,被删除的是最近插入的元素,其实现的是一种后进先出策略。在栈上插入操作称为压入PUSH,删除操作称为弹出POP,队列类模板会在下一章原创 2024-09-03 11:00:13 · 177 阅读 · 0 评论