- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构第8章讲解
第八章 查找;8.1 概述;3、查找;4、查找表的分类;5、平均查找长度;6、查找的基本方法:;8.2 基于线性表的查找;#define MAXSIZE 1000
Typedef int KeyType
typedef struct {
KeyType key;
OtherType other_data;
} RecordType;
typedef struct {
RecordType r[MAXSIZE+1];
/* r[0]为工作单元 */
int length;
} SeqRList; ;顺序查找过程示例:;2、顺序查找算法;例:;3、顺序查找的时间复杂度分析;二、折半查找法(二分搜索法);例如:;2、折半查找算法;3、折半查找时间复杂度分析; 一般情况, 表长为 n 的折半查找判定树的深度和含有 n 个结点的完全二叉树的深度相同。 ;三、索引查找;例:;分块查找过程;分块查找时间复杂度分析;线性表的三种查找方法比较;8.3 基于树的查找法;8. 3. 1 二叉排序树(二叉查找树);一、定义:;例如:;typedef struct Node
{ KeyType key ; /*关键字的值*/
……
struct node *Lchild,*Rchild;/*左右指针*/
}BSTNode,*BSTree; ;二、查找;例如:;从上述查找过程可见:;BSTree SearchBST(BSTree bst, KeyType K)
{if (!bst) return NULL;
else
if (bst- key==K) return bst;
else
if (K bst- key)
return SearchBST(bst-lchild, key);
else
return SearchBST(bst-rchild,key);
} ;BSTree SearchBST(BSTree bst, KeyType K)
{ BSTree q; q=bst;
while(q)
{if (q-key==K) return q;
if (K q-key) q=q-lchild;
else q=q-rchild;
}
return NULL;
};三、插入;void InsertBST(BSTree *bst, KeyType K)
{ BiTree s;
if (*bst==NULL)
{s=(BSTree)malloc(sizeof(BSTNode));
s- key=K; *bst=s;
s-lchild=NULL; s-rchild=NULL;}
else
if (K (*bst)-key)
InsertBST(((*bst)-lchild), K);
else
if (K (*bst)-key)
InsertBST(((*bst)-rchild), K);
} ;二叉排序树的生成算法;例如:; 对同样一组元素值,如果输入的顺序不同,所建的二叉排序树形态也不同。;四、删除;(1)被删除的结点是叶子结点;(2)被删除结点只有左子树或只有右子树;(3)被删除的结点既有左子树也有右子树;方法二:;例:方法二;二叉排序树删除算法;else /*p有左子树*/
{ q=p;s=p-lchild;
while(s-rchild)
{q=s;s=s-rchild;}
if(q==p) q-lchild=s-lchild ;
else q-rchild=s-lchild;
p-key=s-key;
free(s);
}
return bst;} ;五、二叉排序树的查找性能; 假设每个元素的查找概率相等,则它们的平均查找长度分别是: ;8.3.2 平衡二叉树;例如:;例如:;2、平衡二叉排序树的构造;例: 输入(13, 24, 37, 90, 53
您可能关注的文档
- 数据挖掘竞赛赛前指导-MATLAB处理图像杨坦讲解.ppt
- 数据挖掘系列讲座九、电子商务与数据挖掘讲解.ppt
- 数据挖掘9.1-9.2讲解.ppt
- 数据笔试题讲解.doc
- 数据收集与整理讲解.ppt
- 数据结构 例题讲解.ppt
- 位置和方向 1课时 (新课改标准).ppt
- 传统文化-茶.ppt
- 数据的排序与筛选讲解.ppt
- 数据归一化讲解.docx
- 301115_2024_#ESG_联检科技_2024年度环境、社会和治理(ESG)报告_2025-04-29.pdf
- 300308_2024_#ESG_中际旭创_2024年环境、社会及公司治理(ESG)报告_2025-04-21.pdf
- 想生科技产品注册公告及所需文件상생기술제품_등록_공고문_및_제출_서류.pdf
- 300760_2024_#SD_迈瑞医疗_2024年度可持续发展报告_2025-04-29.pdf
- 300870_2024_#SD_欧陆通_欧陆通2024年可持续发展报告_2025-04-22.pdf
- 301369_2024_#ESG_联动科技_2024年度环境、社会与公司治理(ESG)报告_2025-04-18.pdf
- 300937_2024_#SD_药易购_2024年度可持续发展报告_2025-04-25.pdf
- 300621_2024_#ESG_维业股份_维业股份:2024年度环境、社会和公司治理(ESG)报告_2025-04-19.pdf
- 300428_2024_#SD_立中集团_立中四通轻合金集团股份有限公司2024年度可持续发展报告-中文版_2025-04-21.pdf
- 301167_2024_#ESG_建研设计_2024年度环境、社会及公司治理(ESG)报告_2025-04-04.pdf
最近下载
- 浅圆仓(大直径筒仓)滑模工程施工组织设计(技术标).doc
- 栖化新村雨污分流改造工程施工组织设计.doc
- 广西盐业集团招聘考试题目.pdf VIP
- 9九年级《新目标》英语词汇表 by Mr SXH.pdf VIP
- 团险销售课程.pptx VIP
- 2019人教版高中化学必修第一册 《第三章 铁 金属材料》大单元整体教学设计[2020课标].docx
- 高中数学培训---德才教育2015年高考试题——文科数学(天津卷) - 副本.doc VIP
- 公务员常识900题 行测.doc VIP
- 2025湘美版美术七年级下册第二单元《第1课 花卉的秘密》教案.doc VIP
- 如何避免护理患者投诉PPT.pptx
文档评论(0)