关键词不能为空

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

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

作者:高考题库网
来源: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

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

  • 爱心与尊严的高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊严高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊重的作文题库

    1.作文关爱与尊重议论文 如果说没有爱就没有教育的话,那么离开了尊重同样也谈不上教育。 因为每一位孩子都渴望得到他人的尊重,尤其是教师的尊重。可是在现实生活中,不时会有

    小学作文
  • 爱心责任100字作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任心的作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文