- 18
- 0
- 约1.65万字
- 约 95页
- 2017-06-02 发布于河南
- 举报
数据结构chapter 8 查找
* * Hash表的查找性能分析 从哈希表的查找过程可以看出 虽然哈希表在关键字和记录的存储位置之间建立了直接映象,但由于冲突的存在,使得哈希表的 查找过程仍然需要进行比较。 哈希表的查找取决于三个因素:哈希函数、冲突处理方法和哈希表的装填因子。 哈希表的装填因子定义为: 结论:在哈希函数和冲突处理方法均相同 的条件下,哈希表的查找性能取决于表的装填因子。从直观上看,装填因子越小,查找长度越小,反之越大,与关键字的数目无关。 * * 平衡二叉排序树元素插入算法(续1) (三)如果e的关键字小于BBST根结点的关键字,而且在BBST左子树中不存在和e相同关键字的结点,则将e插入到BBST的左子树上,并且在插入后的左子树的深度加1时分别就以下情况进行处理: 1)如果BBST的根节点的平衡因子为-1,则将BBST的平衡因子改为0,BBST的深度不变; 2)如果BBST的根节点的平衡因子为0,则将BBST的平衡因子改为1,BBST的深度加1; 3)如果BBST的根节点的平衡因子为1,则: ①如果BBST左子树的根节点的平衡因子为1,则需要进行单纯右旋处理,并且在右旋转后将BBST左子树根节点的平衡因子改为0,树的深度不变。 ②如果BBST左子树根节点的平衡因子为-1,则需要先进行左旋、后右旋处理,并且在旋转后修改BBST的根节点、左右子树根节点的平衡因子,树的深度不变。 * * 平衡二叉排序树元素插入算法(续1) (四)如果e的关键字大于BBST的根结点的关键字,而且在右子树中不存在和e相同关键字的结点,则将e插入到BBST的右子树上,并且在插入后的右子树的深度加1时分别就以下情况进行处理: 1)如果BBST的根节点的平衡因子为1,则将BBST的平衡因子改为0,BBST的深度不变; 2)如果BBST的根节点的平衡因子为0 ,则将BBST的平衡因子改为-1,BBST的深度加1; 3)如果BBST的根节点的平衡因子为-1,则: ①如果BBST右子树的根节点的平衡因子为-1,则需要进行单纯左旋处理,并且在左旋转后将BBST右子树根节点的平衡因子改为0,树的深度不变。 ②如果BBST右子树的根节点的平衡因子为1,则需要先进行右旋、后左旋处理,并且在旋转后修改BBST的根节点、左右子树根节点的平衡因子,树的深度不变。 * * 二叉平衡树节点C实现 Typedef struct BSTNode { ElemType data; int bf; //平衡因子 struct BSTNode *lchild,*rchild; }BSTNode, *BSTree; #define LH +1 #define EH 0 #define RH -1 * * 二叉平衡树的插入算法(空处理) Status InsertAVL(BSTree T,ElemType e, Boolean taller){ if (!T) { //插入新节点,树长高 T=(BSTree)malloc(sizeof(BSTNode)); T-data = e; T-lchild = T-rchild = NULL; T-bf = EH; taller = TRUE; } else { //非空的情况处理 } * * 二叉平衡树的插入算法(左子树) if (EQ(e.key,T-data.key) {taller=FALSE;return 0;} if LT(e.key,T-data.key) { //再左子树上插入 if (!InsertAVL(T-lchild,e,taller)) return 0; if (taller) { switch (T-bf) { case LH: LeftBalance(T);taller=FALSE;break; case EH: T-bf = LH;taller = TRUE;break; case RH: T-bf = EH; taller = FALSE; break; } } } * * 二叉平衡树的插入算法(右子树) else { if (!InsertAVL(T-rchild,e,taller)) return 0; if (taller) { switch(T-bf) { case LH: T-bf = EH;taller = FALSE;break; case EH: T-bf = RH;taller = TRUE;break; case RH: RightBalance(T);taller=FALSE;break; } // end of switch } //end of if (taller)
您可能关注的文档
最近下载
- ZXM10 EISU(V1.0)增强智能型采集单元用户手册.pdf VIP
- 统编版(2024)一年级语文下册11浪花课件.pptx VIP
- 语文-江西省吉安市2025届高三上学期1月期末教学质量检测试题和答案.docx VIP
- 物理-江西省吉安市2025届高三上学期1月期末教学质量检测试题和答案.docx VIP
- 英语-江西省吉安市2025届高三上学期1月期末教学质量检测试题和答案.docx VIP
- 2022年度(江苏)高考数学真题(带答案).pdf VIP
- 浙江省温州市2025年七年级上学期期末数学试卷附答案.pdf VIP
- 大气降水的同位素水文学-第3讲-2011版本.pdf VIP
- 02J331_地沟及盖板图集.docx
- 政府机关物业管理服务保洁服务工作计划及操作规程服务方案.docx VIP
原创力文档

文档评论(0)