关键词不能为空

当前您在: 主页 > 高中公式大全 >

细雨中的呼喊最新数据结构试题大题编程及参考答案

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-01-17 18:53
tags:

劲舞团歌曲列表-现金管理暂行条例实施细则

2021年1月17日发(作者:何世琨)
精品文档

数据结构考试题参考答案

1
、设顺序表
L
中的数据元素递增有序。试写一算法,将数据元素
x
插入到顺序表
L的适当
位置,以保持该表的有序性。


解:存储结构为:

typedef

struct


SeqList
{ DataType

*data;


int MaxLen;


int

len;
}SeqList;
算法如下:

void insertLx(SeqList &L, DataType x)
{ if(==) return;

int i=-1;
while(i>=0 && x<[i])
{ [i+1]=[i]; i=i-1;}
[i+1]=x; ++;
}
2
、试写一个算法,在带头结点的单链表
L
的元素
x< br>前插入一个结点
y


解:存储结构如下:

typedef


struct


Lnode
{ElemType data;

struct Lnode *next;
}Lnode,

*LinkList;
算法如下:

void

insert_y_before_x(LinkList

L, ElemType

x, ElemType y)
{ Lnode

*q,

*p=L;


while(p->next && p->next->data!=x)

p=p->next;

//

x
的前驱结点
p;
if(!p->next) return;

//
若不存在结点
x
,则返回;

q=new Lnode;
q->data=y; q->next=p->next;

p->next=q;
}
3
、试写一个算法,统计带头指针的单链表
L
的元素个数。

解:存储结构如下:

typedef


struct


Lnode
{ElemType data;

struct Lnode *next;
}Lnode,

*LinkList;
算法如下:

int length(LinkList L)
{ int len=0;
Lnode *p=L;
while(p) { len++;

p=p->next; }
精品文档

精品文档

return

len;
}
注:如果单链表是带头结点的,则算法如下:

int length(LinkList L)
{ int len=0;
Lnode *p=L->next;;
while(p) { len++;

p=p->next; }
return

len;
} 4
、试写一个算法,在带头结点的单链表
L
的第
k
个结点后插入 一个结点
x


解:

存储结构如下:

typedef


struct


Lnode
{ElemType data;

struct Lnode *next;
}Lnode,

*LinkList;
算法如下:

void

insert_after_k( LinkList L,

int

k,

ElemType

x)
{ if(k<0) return;

Lnode *q, *p=L;
int i=0;
while(p && i
p=p->next; }

//
找到第
k
个结点
p;
if(!p) return;

//
若不存在第
k
个结点,则返回;

q=new Lnode;

q->data=x;

q->next=p->next;

p->next=q;
}
注:如果是在
L
的第
k
个结点前插入一个结点,则找第
k-1个结点
p
,然后插入。

5、试写一个算法,在带头结点的单链表L中删 除所有的数据元素为
x
的结点。

解:

存储结构如下:

typedef


struct


Lnode
{ElemType data;

struct Lnode *next;
}Lnode,

*LinkList;
算法如下:

void

Delete_all_x(LinkList L, Elemtype x)
{ Lnode *p, *q;

p=L;

while(p)
{ if(p->next && p->next->data==x)
{q=p->next;

p->next=q->next;

delete q; }
else

p=p->next;
}
}
注意:要删除所有的值为
x
的结点。


精品文档

精品文档

6、
假设一个单循环链表L的数据域 为整型,
设计一个算法,
求该表中所有结点的数据之和。

解:

存储结构如下:

typedef


struct


Lnode
{ElemType data;

struct Lnode *next;
}Lnode,

*LinkList;

假设L带头结点,且L指向头结点,则算法如下:

int sum_Of_Data(LinkList

L)
{ int s=0;

Lnode *p=L->next;
while(p!=L) {s+=p->data;

p=p->next; }
return s; }
假设L不带头结点,且L指向循环链表中任何一个结点,则算法如下:

int sum_of_data(LinkList

L)
{ int s=0;

Lnode *p=L;

if(L)
{ s+=p->data;

p=p->next;

while(p!=L) { s+=p->data; p=p->next; }
}
return s;
}
注:以上两种情形,只要给出其中一种情形的解即可。

7、假设二叉树用二叉链表存储,设计一个算法,求二叉树的结点个数。

解:存储结构如下:


typedef struct bitnode
{ElemType

data;

struct bitnode *lchild,

*rchild;
}bitnode, *bitree;
算法如下:

int nodes(bitree T)
{ if(!T) return 0;

else

return (1+nodes(T->lchild)+nodes(T->rchild));
}
8、写一个算法,建立二叉树的二叉链表。

解:存储结构如下:

typedef char

ElemType;

typedef struct bitnode
{ElemType

data;

struct bitnode *lchild,

*rchild;
}bitnode, *bitree;
算法如下:

void creat_bitree(bitree &T)
{ //
按扩展的先序序列输入结点,输入‘#’表示空。

精品文档

劲舞团歌曲列表-现金管理暂行条例实施细则


劲舞团歌曲列表-现金管理暂行条例实施细则


劲舞团歌曲列表-现金管理暂行条例实施细则


劲舞团歌曲列表-现金管理暂行条例实施细则


劲舞团歌曲列表-现金管理暂行条例实施细则


劲舞团歌曲列表-现金管理暂行条例实施细则


劲舞团歌曲列表-现金管理暂行条例实施细则


劲舞团歌曲列表-现金管理暂行条例实施细则



本文更新与2021-01-17 18:53,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/524470.html

最新数据结构试题大题编程及参考答案的相关文章

  • 余华爱情经典语录,余华爱情句子

    余华的经典语录——余华《第七天》40、我不怕死,一点都不怕,只怕再也不能看见你——余华《第七天》4可是我再也没遇到一个像福贵这样令我难忘的人了,对自己的经历如此清楚,

    语文
  • 心情低落的图片压抑,心情低落的图片发朋友圈

    心情压抑的图片(心太累没人理解的说说带图片)1、有时候很想找个人倾诉一下,却又不知从何说起,最终是什么也不说,只想快点睡过去,告诉自己,明天就好了。有时候,突然会觉得

    语文
  • 经典古训100句图片大全,古训名言警句

    古代经典励志名言100句译:好的药物味苦但对治病有利;忠言劝诫的话听起来不顺耳却对人的行为有利。3良言一句三冬暖,恶语伤人六月寒。喷泉的高度不会超过它的源头;一个人的事

    语文
  • 关于青春奋斗的名人名言鲁迅,关于青年奋斗的名言鲁迅

    鲁迅名言名句大全励志1、世上本没有路,走的人多了自然便成了路。下面是我整理的鲁迅先生的名言名句大全,希望对你有所帮助!当生存时,还是将遭践踏,将遭删刈,直至于死亡而

    语文
  • 三国群英单机版手游礼包码,三国群英手机单机版攻略

    三国群英传7五神兽洞有什么用那是多一个武将技能。青龙飞升召唤出东方的守护兽,神兽之一的青龙。玄武怒流召唤出北方的守护兽,神兽之一的玄武。白虎傲啸召唤出西方的守护兽,

    语文
  • 不收费的情感挽回专家电话,情感挽回免费咨询

    免费的情感挽回机构(揭秘情感挽回机构骗局)1、牛牛(化名)向上海市公安局金山分局报案,称自己为了挽回与女友的感情,被一家名为“实花教育咨询”的情感咨询机构诈骗4万余元。

    语文