- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
查找排序总结.doc
===============================总结:几种常见的查找算法*****************************************************************************//静态查找——顺序查找*****************************************************************************//静态查找——索引顺序表,效果比顺序表查找较好,但远不及折半查找*****************************************************************************//静态查找——折半查找#include "stdio.h"#define SIZE 11int Bsearch(int num[SIZE],int number,int low,int high){?int mid;?while(low<=high)?{? mid=(low+high)/2;? if(number==num[mid]) return mid;? else if(number>num[mid]) low=mid+1;? else high=mid-1;?}?return 0;}main(){?int num[SIZE],number,index,i;?for(i=1;i<SIZE;i++)? num[i]=i;//前提是已排序?printf("please input a number:");?scanf("%d",&number);?index=Bsearch(num,number,1,SIZE-1);?if(index==0)? printf("not find!");?else? printf("\nlocation:%d",index);?getch();}*****************************************************************************//静态查找——次优查找树#include "stdio.h"#include "stdlib.h"#include "math.h"#include "conio.h"#define SIZE 11struct Node{?int num;?int weight;?struct Node *lchild,*rchild;};typedef struct{?int num[SIZE];?int weight[SIZE];}NUM;Pratition(NUM *array,int low,int high){?array->num[0]=array->num[low];?array->weight[0]=array->weight[low];?while(low<high)?{? while(low<high&&array->num[high]>array->num[0]) --high;? {?? array->num[low]=array->num[high];?? array->weight[low]=array->weight[high];? }? while(low<high&&array->num[low]<=array->num[0]) ++low;? {?? array->num[high]=array->num[low];?? array->weight[high]=array->weight[low];? }?}?array->num[low]=array->num[0];?array->weight[low]=array->weight[0];?return low;}Sort(NUM *array,int low,int high){?int mid;?if(low<high)?{? mid=Pratition(array,low,high);? Sort(array,low,mid-1);? Sort(array,mid+1,high);?}}CreateSW(int sw[SIZE],int weight[SIZE]){?int i,j;?for(i=0;i<SIZE;i++)?{? sw[i]=0;? for(j=1;j<=i;j++)?? sw[i]+=weight[j];?}}CreateTree(struct Node *p,int sw[SIZE],N
1亿VIP精品文档
相关文档
最近下载
- 色卡对照表RAL劳尔色卡电子版色.pdf
- 2023年泉州交通发展集团有限责任公司校园招聘考试笔试题库及答案解析.docx
- 《品牌建设研究国内外文献综述》5000字.docx
- JC_T907-2018混凝土界面处理剂.pdf
- 基因工程实验论文-gy.doc VIP
- 2021年新高考北京英语高考试题(含解析).pdf
- 浙江省台州市温岭市2023-2024学年四年级上学期数学期末试卷 解析版.docx VIP
- 人教版七年级下册英语期末复习: Unit 1-Unit 12各单元语法知识点与12个单元测试卷汇编(含答案).pdf VIP
- 三年级 快乐读书吧 整本书阅读《稻草人》分享课课件.pptx
- 电力监控系统管理规定.docx
文档评论(0)