2015年下半年宁夏回族自治区数据分析加强
1、证明由二叉树的中序序列和后序序列,也可以唯一确定一棵二叉树。
29. ① 试找出满足下列条件的二叉树
1)先序序列与后序序列相同 2)中序序列与后序序列相同
3)先序序列与中序序列相同 4)中序序列与层次遍历序列相同
2、对二叉树的某层上的结点进行运算,采用队列结构按层次遍历最适宜。
int LeafKlevel(BiTree bt, int k) //求二叉树bt 的第k(k>1) 层上叶子结点个数
{if(bt==null || k<1) return(0);
BiTree p=bt,Q[]; //Q是队列,元素是二叉树结点指针,容量足够大
int front=0,rear=1,leaf=0; //front 和rear是队头和队尾指针, leaf是叶子结点数
int last=1,level=1; Q[1]=p; //last是二叉树同层最右结点的指针,level 是二叉树的层数
while(front<=rear)
{p=Q[++front];
if(level==k && !p->lchild && !p->rchild) leaf++; //叶子结点
if(p->lchild) Q[++rear]=p->lchild; //左子女入队
if(p->rchild) Q[++rear]=p->rchild; //右子女入队
if(front==last) {level++; //二叉树同层最右结点已处理,层数增1
last=rear; } //last移到指向下层最右一元素
if(level>k) return (leaf); //层数大于k 后退出运行
}//while }//结束LeafKLevel
3、对二叉树的某层上的结点进行运算,采用队列结构按层次遍历最适宜。
int LeafKlevel(BiTree bt, int k) //求二叉树bt 的第k(k>1) 层上叶子结点个数
{if(bt==null || k<1) return(0);
BiTree p=bt,Q[]; //Q是队列,元素是二叉树结点指针,容量足够大
int front=0,rear=1,leaf=0; //front 和rear是队头和队尾指针, leaf是叶子结点数
int last=1,level=1; Q[1]=p; //last是二叉树同层最右结点的指针,level 是二叉树的层数
while(front<=rear)
{p=Q[++front];
if(level==k && !p->lchild && !p->rchild) leaf++; //叶子结点
if(p->lchild) Q[++rear]=p->lchild; //左子女入队
if(p->rchild) Q[++rear]=p->rchild; //右子女入队
if(front==last) {level++; //二叉树同层最右结点已处理,层数增1
last=rear; } //last移到指向下层最右一元素
if(level>k) return (leaf); //层数大于k 后退出运行
}//while }//结束LeafKLevel
4、设有两个集合A和集合B,要求设计生成集合C=A∩B的算法,其中集合A、B和C用链式存储结构表示。
typedef struct node {int data; struct node *next;}lklist;
void intersection(lklist *ha,lklist *hb,lklist *&hc)
{
lklist *p,*q,*t;
for(p=ha,hc=0;p!=0;p=p->next)
{ for(q=hb;q!=0;q=q->next) if (q->data==p->data) break;
if(q!=0){ t=(lklist *)malloc(sizeof(lklist)); t->data=p->data;t->next=hc; hc=t;}
}
}
5、设一组有序的记录关键字序列为(13,18,24,35,47,50,62,83,90),查找方法用二分查找,要求计算出查找关键字62时的比较次数并计算出查找成
2015年下半年宁夏回族自治区数据加强_韩语学习_外语学习_教育专区。2015年下半年...(20分) 7、给出折半查找的递归算法,并给出算法时间复杂度性分析。 8、由...
2015年下半年宁夏回族自治区数据总结加强_韩语学习_外语学习_教育专区。2015年下...}// Translation [算法分析] 算法中使用选择法排序,比较次数较多,但数据交换(...
2015年宁夏回族自治区数据分析加强_韩语学习_外语学习_教育专区。2015年宁夏回族自治区数据分析加强 1、我们用 l 代表最长平台的长度,用 k 指示最长平台在数组 b ...
2015年宁夏回族自治区数据分析加强_韩语学习_外语学习_教育专区。2015年宁夏回族自治区数据分析加强 1、我们用 l 代表最长平台的长度,用 k 指示最长平台在数组 b ...
2015年宁夏回族自治区数据分析加强_韩语学习_外语学习_教育专区。2015年宁夏回族自治区数据分析加强 1、我们用 l 代表最长平台的长度,用 k 指示最长平台在数组 b ...
2015年宁夏回族自治区数据分析加强_韩语学习_外语学习_教育专区。2015年宁夏回族自治区数据分析加强 1、本题要求建立有序的循环链表。从头到尾扫描数组A,取出A[i]...
2015年下半年宁夏回族自治区数据分析高级_韩语学习_外语学习_教育专区。2015年下半年宁夏回族自治区数据分析高级 1、对二叉树的某层上的结点进行运算,采用队列结构按...
2015宁夏回族自治区数据分析加强_韩语学习_外语学习_教育专区。2015宁夏回族自治区数据分析加强 1、请设计一个算法,要求该算法把二叉树的叶子结点按从左到右的顺序...
2015年下半年宁夏回族自治区分析数据深入_韩语学习_外语学习_教育专区。2015年下半年宁夏回族自治区分析数据深入 1、设有一组初始记录关键字为(45,80,48,40,22,...

我要评论