学海网 文档下载 文档下载导航
设为首页 | 加入收藏
搜索 请输入内容:  
 导航当前位置: 文档下载 > 所有分类 > 外语学习 > 韩语学习 > 2011年山西省数据库入门入门

2011年山西省数据库入门入门

2011年山西省数据库入门入门

1、矩阵中元素按行和按列都已排序,要求查找时间复杂度为O(m+n),因此不能采用常规的二层循环的查找。可以先从右上角(i=a,j=d)元素与x比较,只有三种情况:一是A[i,j]>x, 这情况下向j 小的方向继续查找;二是A[i,j]<x,下步应向i大的方向查找;三是A[i,j]=x,查找成功。否则,若下标已超出范围,则查找失败。

void search(datatype A[ ][ ], int a,b,c,d, datatype x)

//n*m矩阵A,行下标从a到b,列下标从c到d,本算法查找x是否在矩阵A中.

{i=a; j=d; flag=0; //flag是成功查到x的标志

while(i<=b && j>=c)

if(A[i][j]==x) {flag=1;break;}

else if (A[i][j]>x) j--; else i++;

if(flag) printf(“A[%d][%d]=%d”,i,j,x); //假定x为整型.

else printf(“矩阵A中无%d 元素”,x);

}算法search结束。

[算法讨论]算法中查找x的路线从右上角开始,向下(当x>A[i,j])或向左(当x<A[i,j])。向下最多是m,向左最多是n。最佳情况是在右上角比较一次成功,最差是在左下角(A[b,c]),比较m+n次,故算法最差时间复杂度是O(m+n)。

2、设一棵二叉树的结点结构为 (LLINK,INFO,RLINK),ROOT为指向该二叉树根结点的指针,p和q分别为指向该二叉树中任意两个结点的指针,试编写一算法ANCESTOR(ROOT,p,q,r),该算法找到p和q的最近共同祖先结点r。

3、数组A和B的元素分别有序,欲将两数组合并到C数组,使C仍有序,应将A和B拷贝到C,只要注意A和B数组指针的使用,以及正确处理一数组读完数据后将另一数组余下元素复制到C中即可。

void union(int A[],B[],C[],m,n)

//整型数组A和B各有m和n个元素,前者递增有序,后者递减有序,本算法将A和B归并为递增有序的数组C。

{i=0; j=n-1; k=0;// i,j,k分别是数组A,B和C的下标,因用C描述,下标从0开始 while(i<m && j>=0)

if(a[i]<b[j]) c[k++]=a[i++] else c[k++]=b[j--];

while(i<m) c[k++]=a[i++];

while(j>=0) c[k++]=b[j--];

}算法结束

4、要求二叉树按二叉链表形式存储。15分

(1)写一个建立二叉树的算法。(2)写一个判别给定的二叉树是否是完全二叉树的算法。 BiTree Creat() //建立二叉树的二叉链表形式的存储结构

{ElemType x;BiTree bt;

scanf(“%d”,&x); //本题假定结点数据域为整型

if(x==0) bt=null;

else if(x>0)

{bt=(BiNode *)malloc(sizeof(BiNode));

bt->data=x; bt->lchild=creat(); bt->rchild=creat();

}

else error(“输入错误”);

return(bt);

第1页

TOP相关主题

  • 数据库学习入门
  • nosql数据库入门
  • 数据库设计入门经典
  • sql数据库入门
  • 数据库快速入门教程
  • 数据库入门
  • sql数据库学习入门
  • db2数据库入门教程

我要评论

相关文档

  • 2011年山西省数据库入门入门

    2011年山西省数据库入门入门_韩语学习_外语学习_教育专区。2011年山西省数据库入门入门 1、矩阵中元素按行和按列都已排序,要求查找时间复杂度为O(m+n),因此不...

  • 2011年山西省数据库入门入门

    2011年山西省数据库入门入门_韩语学习_外语学习_教育专区。2011年山西省数据库入门入门 1、已知有向图G=(V,E),其中V={V1,V2,V3,V4,V5,V6,V7},E={<V1...

  • 2011年山西省数据库入门入门

    2011年山西省数据库入门入门_韩语学习_外语学习_教育专区。2011年山西省数据库入门入门 1、矩阵中元素按行和按列都已排序,要求查找时间复杂度为 O(m+n) ,因此...

  • 2011年山西省数据库入门入门

    2011年山西省数据库入门入门_韩语学习_外语学习_教育专区。2011年山西省数据库入门入门 1、矩阵中元素按行和按列都已排序,要求查找时间复杂度为 O(m+n) ,因此...

  • 2011年山西省数据库入门基础

    2011年山西省数据库入门基础_韩语学习_外语学习_教育专区。2011年山西省数据库入门基础 1、请设计一个算法,要求该算法把二叉树的叶子结点按从左到右的顺序连成一...

  • 2011年山西省数据库入门基础

    2011年山西省数据库入门基础_韩语学习_外语学习_教育专区。2011年山西省数据库入门基础 1、请设计一个算法,要求该算法把二叉树的叶子结点按从左到右的顺序连成一...

  • 2011年山西省数据库入门基础

    2011年山西省数据库入门基础_韩语学习_外语学习_教育专区。2011年山西省数据库入门基础 1、请设计一个算法,要求该算法把二叉树的叶子结点按从左到右的顺序连成一...

  • 2011年山西省数据库入门基础

    2011年山西省数据库入门基础_韩语学习_外语学习_教育专区。2011年山西省数据库入门基础 1、对一般二叉树,仅根据一个先序、中序、后序遍历,不能确定另一个遍历...

  • 2011年山西省数据库入门大纲

    2011年山西省数据库入门大纲_韩语学习_外语学习_教育专区。2011年山西省数据库入门大纲 1、设有两个集合A和集合B,要求设计生成集合C=A∩B的算法,其中集合A、B...

  • 2011山西省数据库入门高级

    2011山西省数据库入门高级_韩语学习_外语学习_教育专区。2011山西省数据库入门高级 1、题目中要求矩阵两行元素的平均值按递增顺序排序,由于每行元素个数相等,按平均...

  • 2011山西省数据库入门深入

    2011山西省数据库入门深入_韩语学习_外语学习_教育专区。2011山西省数据库入门深入 1、证明由二叉树的中序序列和后序序列,也可以唯一确定一棵二叉树。 29. ① ...

  • 2010年山西省数据库入门入门

    2010年山西省数据库入门入门_韩语学习_外语学习_教育专区。2010年山西省数据库入门入门 1、矩阵中元素按行和按列都已排序,要求查找时间复杂度为 O(m+n) ,因此...

站点地图 | 文档上传 | 侵权投诉 | 手机版
新浪认证  诚信网站  绿色网站  可信网站   非经营性网站备案
本站所有资源均来自互联网,本站只负责收集和整理,均不承担任何法律责任,如有侵权等其它行为请联系我们.
文档下载 Copyright 2013 doc.xuehai.net All Rights Reserved.  email
返回顶部