
数据结构
文章平均质量分 68
Annnnie35
这个作者很懒,什么都没留下…
展开
-
数据结构5-Hashing哈希
文章目录常用函数冲突解决Separate Chaininglinear ProbingQuadratic probingDouble Hashing常用函数冲突解决Separate Chaining有冲突时挂单链表,不用移动了。注意先后顺序linear Probing有冲突即前移,索引和访问次数均++删除时要留boolean标记,否则以为是空的就不会继续向前查询了Quadratic probing以二次的间隔移动Double Hashing用第二个哈希函数确定偏移大小原创 2021-12-08 22:27:13 · 312 阅读 · 0 评论 -
数据结构6-优先队列、堆、堆排序
文章目录优先队列堆初始化删除插入优先队列的应用堆排序the selection problem优先队列是一种数据结构,可用二叉堆等实现。普通队列是先进先出的,追加在队列尾,删除在队列头。而有限队列赋予了优先级,分为最小优先队列和最大优先队列。堆初始化由底向上即从最后一个父节点开始不断比较父子节点大小,进行调整。linear-time algorithm : O(n)算法分析:此处k=3 最大次数即与叶结点的距离由顶向下O(nlgn)一边添加就一边调整 one at a tim原创 2021-12-09 12:17:42 · 554 阅读 · 0 评论 -
数据结构4.1-二叉搜索树、平衡二叉树、B树
文章目录二叉搜索树定义删除树高平衡二叉树定义插入删除m路搜索树定义插入删除高度B树定义插入练习二叉搜索树目的:使搜索的复杂度降到对数复杂度定义左子树key<root 右子树key>rootkey是唯一的有时多一个leftSize,值为左子树结点个数+1(自己)删除只有一个树叶,和只有一个子树:直接删,顶上同时有左子树或右子树:用左子树的最大或右子树的最小t.element覆盖原来的点,调用的remove点会删除原来子树的root,就相当于调整了原创 2021-12-03 20:16:28 · 615 阅读 · 0 评论 -
数据结构作业2-多项式相加、约瑟夫问题
文章目录多项式相加约瑟夫问题多项式相加完成函数 public Node add(Node link1, Node link2) 提示:link1 link2 分别为两条链表的头节点(多项式从下一个节点开始,若为空多项式,则仅含头节点) 函数请返回结果多项式的第一个节点,不要返回头节点。注意初始指数的顺序是从小到大。伪代码:不断比较指数和连接//Node定义public class Node { public int coef;//系数 public int exp;//指原创 2021-10-25 21:29:58 · 301 阅读 · 0 评论 -
数据结构作业1-汉诺塔和全排列
文章目录实现汉诺塔全排列排列实现汉诺塔问题描述:递归实现汉诺塔,有三根杆(编号A、B、C),在A杆自下而上、由大到小按顺序放置n个盘子。 要求把A杆上的盘子全部移到B杆上,并仍保持原有顺序叠好。 操作规则:每次只能移动一个盘子,并且在移动过程中三根杆上都始终保持大盘在下,小盘在上,操作过程中盘子可以置于A、B、C任一杆上。完成函数Hanoi,使用标准输出打印移动盘子的过程。 输入:n为正整数,n >= 1示例: n = 2 打印结果(最后一行有换行符): Move disk 1 from A原创 2021-10-17 00:36:06 · 335 阅读 · 0 评论