版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
三、计算题〔每题624在如下数组A中链接存储了一个线性表,表头指针为A[0].nextA012345673572041一个图的顶点集V和边集E分别为:V={1,2,3,4,5,6,7};4,2,5,8,3时,每参加一个数据后堆的变化。714分〕LinkListmynote(LinkList{//Lif(L&&L- while(p->next)p=p->next; } }〔1〕说明语句S1〔2〕说明语句组S2〔3a1,a2,
〕,nvoidABC(BTNode*{ BTABC(BT-ABC(BT->right);cout<<BT->data<<'';}}8分〕二叉搜索树的查找boolFind(BTreeNode*BST,ElemType&{ifreturnfalse;//查找失败else{if(item==BST-item=BST->data;/
elseif(item<BST-returnFind( elsereturnFind( }8统计出单链表HL中结点的值等于给定值X的结点数。intCountX(LNode*HL,ElemTypex)三、应用题(36设一组初始记录关键字序列为(45,80,48,40,22,78),4趟简单项4设指针变量p指向双向链表中结点Aq指向被插入结点BA的后面插入结点Bllinkrlink。二分查找,要求计算出查找关键字62时的比较次数并计算出查找成功时的平均查找长设一棵树T{(A,B),(A,C),(A,D),(B,E),(C,F),(C,G)},要求设有无向图G,四、算法设计题(16设有一组初始记录关键字序列〔K1,K2,…,KnO(n)的时间Ki,右半部分的每个关键字均大于等于Ki。设有两个集合A和集合B,要求设计生成集合C=A∩B的算法,其中集合A、BC以下算法实如今顺序散列表中查找值为xstructrecord{intkey;intinthashsqsearch(structrecordhashtable[],int{int j=i=k%while(hashtable[j].key!=k&&hashtable[j].flag!=0){j=( )%m;if(i==j)return(-1);}if( )return(j);elsereturn(-1);}以下算法实如今二叉排序树上查找关键值k,typedefstructnode{intkey;structnode*lchild;structnode*rchild;}bitree; *bstsearch(bitree*t,int {if(t==0) whileif(t- ;elseif(t->key>k)t=t->lchild; }1030二叉树的前序遍历序列是AEFBGCDHIKJEFAGBCHKIJD,画出此二叉待散列的线性表为〔36,15,40,63,22[06],假定选用的散列函数是H〔K〕=Kmod7,假设发生冲突采用线性探查法处理,试:〔1 2〕求出在查找每一个元素概率相等情况下的平均查找长度。31,1,,,1,19,1,(每题15分,共30分)设计一个求结点x设一组初始记录关键字序列为(20,18,22,16,30,19),那么以20为中轴的一趟快 设某无向图G中有n个顶点,用邻接矩阵A作为该图的存储构造,那么顶点i和顶点互为邻接点的条件 设无向图对应的邻接矩阵为那么A中第i上非0元素的个 第i列上非元素的个数〔填等于,大于或小于设前序遍历某二叉树的序列为ABCD,中序遍历该二叉树的序列为BADC,那么后序遍 设散列函数H(k)=kmodp正hashtalbek的结点,成功时返回指向关键0。typedefstructnode{intkey;structnode*next;}lklist;voidcreatelkhash(lklist*hashtable[]){int lklist {s=(lklist*)malloc(sizeof(lklist));s-k=a[i]%p;s- }}10301、画出广义表LS=((),(e),(a,(b,c,d2求树〔a〔3ABCABCDEFGHIJK
3、设散列表的地址范围是[0..9],散列函数为H〔key〕=〔key2+2〕MOD97、4、5、3、6、2、8、91030void {for(i=1;i<=n-1;{for(exchange=0,j=0; if(r[j]>r[j+1]){temp=r[j+1]; if(exchange==0)return;}}structrecord{intkey;intothers;};intbisearch(structrecordr[],intk){intlow=0,mid,high=n-1;{ if(r[mid].key==k)return(mid+1);else )high=mid-1;else}}三、应用题(32设某棵二叉树的中序遍历序列为DBEAC,前序遍历序列为ABDEC,G并设一组初始记录关键字序列为(15,17,18,22,35,51,60),8,散列函数H(k)=kmod7,初始记录关键字序列为13,68四、算法设计题(28四、算法设计题(20分)三、填空题(30structrecord{intkey;datatypevoidquickpass(structrecordr[],ints,intt,int{intj=t;structrecordx=r[s];i=s;{while(i<j&&r[j].key>x.key)j=j- if(i<j)while ) if(i<j){r[j]=r[i];j=j-} }四、算法设计题(20三、填空题(30设一组初始记录关键字序列为(49,38,65,97,76,13,27,50),那么以d=4为增量 容。typedefstructnode{intdata;structnode*lchild;structnode bstinsert(bitree*&t,intk){if(t==0){ elseif(t->data>k)bstinsert(t->lchild,k);else }p指向单链表中结点As指向被插入的结点X,那么在结点A后面插入结点X需要执行的语句序列:s->next=p-
设指针变量head指向双向链表中的头结点指针变量p指向双向链表中的第一个结点,那么指针变量p和指针变量head之间的关系是p= 和head= 点中的两个指针域分别为llink和rlink。设某棵二叉树的中序遍历序列为ABCD,后序遍历序列为BADC 完全二叉树中第5层上最少 个结点,最多 个结点设有向图中不存在有向边<V,VA中的数组元素A[i][j 等 设一组初始记录关键字序列为(49,38,65,97,76,13,27,50),那么第4趟直接选 设连通图G中有n个顶点e条边,那么对应的最小生成树上 条边始堆只需把16与 四、算法设计题(20五、算法设计题(20二、填空题(486设指针变量p指向单链表中结点A,那么删除结点A的语句序列为: 数据构造从逻辑上划分为三种根本类型 设无向图G中有n个顶点e条边那么用邻接矩阵作为图的存储构造进展深度优先或广 ;用邻接表作为图的存储构造进展深度优先或 设散列表的长度为8,散列函数H(k)=k%7,用线性探测法解决冲突,那么根据一组初 设一组初始关键字序列为(38,65,97,76,13,27,10),那么第3趟冒泡排序完毕后 设一组初始关键字序列为(38,65,97,76,13,27,10),那么第3趟简单项选择择排 设有向图G中的有向边的集合<6,5>},那么该图的一个拓扑序列 typedefstructnode{intdata;structnode voidcreatebitree(bitree*&bt){if(ch=='#') {bt=(bitree*)malloc(sizeof(bitree));bt->data=ch; ;createbitree(bt-}下面程序段的功能是利用从尾部插入的方法建立单链表的算法的内容。typedefstructnode{intdata;structnode*next;}lklist;voidlklistcreate( *&head){for{p=(lklist*)malloc(sizeof(lklist));scanf(“%d〞,&(p->data));p->next=0;if(i==1)head=q=p;else{q->next=p; }}三、算法设计题(22设计在二叉排序树上查找结点X的算法。设关键字序列(k1,k2,…,kn-1)是堆,设计算法将关键字序列(k1,k2,…,n-1,x整为堆。62478,50,40,60,34,90 1010 00
1 1 11
11 2
714〔1〔2n1〔3〕返回的线性表为〔a2,a3,…,a,an128 六、编写算法〔8分〕intCountX(LNode*HL,ElemType inti=0;LNode*p=HL;//i为计数器{if(P->data==x)i++;}//while,出循环时i中的值即为x结点个数returni;q->llink=p;q->rlink=p->rlink;p->rlink->llink=q;p-略设有一组初始记录关键字序列〔KKKO(n) Ki每个关键字均大于等于Kivoidquickpass(intr[],ints,int{inti=s,j=t,x=r[s];while(i<j&&r[j]>x)j=j-1;if(i<j)while(i<j&&r[i]<x)i=i+1;if(i<j){r[j]=r[i];j=j-}}设有两个集合A和集合B,要求设计生成集合C=A∩B的算法,其中集合A、BCtypedefstructnode{intdata;structnode*next;}lklist;voidintersection(lklist*ha,lklist*hb,lklist*&hc){lklist*p,*q,*t; for(q=hb;q!=0;q=q->next)if(q->data==p->data)if(q!=0){t=(lklist*)malloc(sizeof(lklist));t->data=p->data;t->next=hc;}}AEAEBFGCDHFKJ2、H(36)=36mod H(22)=(1+1)mod7=2;….冲1H(15)=15mod7=1;….冲 H2(22)=(2+1)modH(15)=(1+1)mod1H(40)=40modH(63)=63modH(22)=22mod7=1;….〔1 〔2〕ASL=1211353、1,3,typedefinttypedefstructnode{datatypedata;structnode*next;}lklist;voiddelredundant(lklist*&head){lklist*p,*q,*s;{for(q=p->next,s=q;q!=0;if(q->data==p->data){s->next=q->next;free(q);q=s->next;}else{s=q,q=q->next;}}}设计一个求结点xtypedefstructnode{datatypedata;structnode*lchild,*rchild;}bitree;bitree*q[20];intr=0,f=0,flag=0;voidpreorder(bitree*bt,char{if(bt!=0&&if(bt->data==x){flag=1;else{r=(r+1)%20;q[r]=bt;preorder(bt->lchild,x);preorder(bt->rchild,x);}voidparent(bitree*bt,char{inti;for(i=f+1;i<=r;i++)if(q[i]->lchild->data==x||q[i]->rchild->data)break;if(flag==0)printf("notfoundx\n");elseif(i<=r)printf("%c",bt->data);elseprintf("not01---->1^101---->1^1^1---->^00a1----1----100 ^(1) BDEFCA;(2) BDEFCAIJKHGAABGCHDIEJFK01012345678945^3869^^^27^^^typedefchartypedefstructnode{datatypedata;structnodevoidsplit(lklist*head,lklist*&ha,lklist*&hb,lklist{lklist*p;ha=0,hb=0,hc=0;{head=p->next;p-if(p->data>='A'&&p->data<='Z'){p->next=ha;elseif(p->data>='0'&&p->data<='9'){p->next=hb;hb=p;}else{p->next=hc;}}typedefstructnode{intdata;structnode*lchild,*rchild;}bitree;voidswapbitree(bitree*bt){bitree*p;if(bt==0)return;swapbitree(bt->lchild);swapbitree(bt->rchild);p=bt->lchild;bt->lchild=bt->rchild;bt->rchild=p;}#definentypedefstructnode{intkey;structnode*lchild,*rchild;}bitree;voidbstinsert(bitree*&bt,intkey){if(bt==0){bt=(bitree*)malloc(sizeof(bitree));bt->key=key;bt->lchild=bt->rchild=0;}elseif(bt->key>key)bstinsert(bt->lchild,key);elsebstinsert(bt->rchild,key);}voidcreatebsttree(bitree{intfor(i=1;i<=n;i++)}n-typedefstructnode{datatypedata;structnode*lchild,*rchild;}bitree;intjudgebitree(bitree*bt1,bitree*bt2){if(bt1==0&&bt2==0)elseif(bt1==0||bt2==0||bt1->data!=bt2->data)elsereturn(judgebitree(bt1->lchild,bt2->lchild)*judgebitree(bt1->rchild,bt2-}voidmergelklist(lklist*ha,lklist*hb,lklist{lklist*s=hc=0;while(ha!=0&&hb!=0)if(ha->data<hb->data){if(s==0)hc=s=ha;else{s->next=ha;s=ha;};ha=ha->next;}else{if(s==0)hc=s=hb;else{s->next=hb;s=hb;};hb=hb->next;}if(ha==0)s->next=hb;elses-}structrecord{intkey;intothers;};intbisearch(structrecordr[],int{intlow=0,mid,high=n-1;{if(r[mid].key==k)return(mid+1);elseif(r[mid].key>k)high=mid-1;else}}intminnum=-typedefstructnode{intkey;structnode*lchild,*rchild;}bitree;voidinorder(bitree*bt){ }voidstraightinsertsort(lklist{lklist intif(head==0||head->next==0)elsefor(q=head,p=head->next;p!=0;p=q-{for(s=head;s!=q->next;s=s->next)if(s->data>p->data)break; }}i<j&&voidsimpleselectsorlklist(lklist{lklist*p,*q,*s; intmin,t;if(head==0||head->next==0)return;for(q=head;q!=0;q=q->next){min=q->data;for(p=q->next;p!=0;p=p->next)if(min>p->data){min=p->data;s=p;}if(s!=q){t=s->data;s->data=q->data;q->data=t;}}}voidsubstring(chars[],longstart,longcount,chart[{longif(start<1||start>length)printf("Thecopypositioniselseif(start+count-1>length)printf("Toocharacterstobecopied");else{for(i=start-1,j=0;i<start+count-1;i++,j++)t[j]=s[i];t[j]=}inttypedefstructnode{intkey;structnode*lchild,*rchild;}bitree;voidlevel(bitree*bt,intx){if }
t=(bitree*)malloc(sizeof(bitree)),bstinsert(t-p-head->rlink,p-0n-voidcountnode(bitree*bt,int{{count++;countnode(bt->lchild,count);countnode(bt-}typedefstruct{intvertex[m];inttypedefstructnode1{intinfo;intadjvertex;structnode1*nextarc;}glinklistnode;typedefstructnode2{intvertexinfo;glinklistnode*firstarc;}glinkheadnode;voidadjmatrixtoadjlist(gadjmatrixg1[],glinkheadnodeg2[{inti,j;glinklistnode*p;for(i=0;i<=n-1;i++)g2[i].firstarc=0;for(i=0;i<=n-1;i++)for(j=0;j<=n-1;j++)if(g1.edge[i][j]==1){p=(glinklistnode*)malloc(sizeof(glinklistnode));p->adjvertex=j;p->nextarc=g[i].firstarc;g[i].firstarc=p;p=(glinklistnode*)malloc(sizeof(glinklistnode));p->adjvertex=i;p->nextarc=g[j].firstarc;g[j
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度弱电设备供应与安装合同3篇
- 2024年城乡快递服务标准化建设合同
- 2024年度无形资产许可使用合同3篇
- 防火门生产设备购买2024合同3篇
- 二零二四年度新能源汽车制造销售合同2篇
- 2024年全新技术支持服务合作合同版B版
- 2024年度环保公交车采购合同
- 2024版保险代理合同(含保险产品、代理费用和合作期限)3篇
- 2024年吊车租赁服务施工合作合同版B版
- 2024年北碚集资房购买销售合同范本版B版
- 人教版数学四年级上册-第五单元-平行四边形和梯形-单元测试卷(含答案)
- 国开(河北)2024年秋《现代产权法律制度专题》形考作业1-4答案
- 2024世界糖尿病日糖尿病与幸福感糖尿病健康教育课件
- 民用无人机操控员执照(CAAC)考试复习重点题库500题(含答案)
- 2024年全国中学生地理知识竞赛试题及答案
- 中外比较文学研究专题智慧树知到期末考试答案2024年
- (2024年)师德师风学习内容教师师德师风培训内容通用多篇
- EPC项目投标人承包人工程经济的合理性分析、评价
- Java程序设计入门(第2版)PPT全套完整版教学课件
- 国家开放大学行为表现答案
- 籍贯对照表完整版
评论
0/150
提交评论