新建
上传
首页
助手
最?/div>
资料?/div>
工具

数据结构平时作业

 

 

1

.评价一个好的算法,应该从哪几方面来考虑的?

 

答:

1

、算法的正确性,

2

、算法的易读性,

3

、是算法的健壮性,

4

、是算法的时空效率(?/p>

行)

?/p>

 

 

2. 

简述线性表的顺序和链式两种存储结构各自的主要特点?/p>

 

答:

1

、顺序存储结构:存储单元地址连续,它以“物理位置相邻”来表示线性表中数据元

素间的逻辑关系?/p>

可随机存取表中任一元素?/p>

但它也使得插入和删除操作需移动大量?/p>

数据元素?/p>

由于顺序表需要一组地址连续的存储单元,

对于长度可变的线性表就需要预

分配足够的空间,

有可能使一部分存储空间长期闲置不能充分利用?/p>

也可能由于估计不

足,

当表长超过预分配的空间而造成溢出?/p>

在这种情况下?/p>

又难于扩充连续的存储空间?/p>

 

2

、链式存储结构:存储单元地址为任意一组,它的存储单元可以是连续的,也可以?/p>

不连续的?/p>

甚至是零散分布在内存中的任意位置上的?/p>

因此?/p>

链表中结点的逻辑次序?/p>

物理次序不一定相同?/p>

在表示数据元素之间的逻辑关系时,

除了存储其本身的信息之外?/p>

还需存储一个指示其直接后继的信息(即直接后继的存储位置?/p>

,这两部分信息组成数

据元素的存储映像,称为结点(

node

?/p>

 

 

3. 

说明在线性表的链式存储结构中,试述头结点

,

首元结点

,

头指针这三个概念的区?/p>

.

 

答:头结点、首元结点、头指针区别为:性质不同、目的不同、存在情况不同?/p>

 

一、性质不同

 

1

)头结点:头结点是在链表的首元结点之前附设的一个结点?/p>

 

2

)首元结点:首元结点是指链表中存储线性表中第一个数据元?/p>

a1

的结点?/p>

 

3

)头指针:头指针是指向链表中第一个结点(或为头结点或为首元结点)的指针?/p>

 

二、目的不?/p>

 

1

)头结点:头结点为了方便操作链表而附设的?/p>

 

2

)首元结点:首元结点作为链表的开始结点?/p>

 

3

)头指针:头指针为了指向链表的基地址?/p>

 

三、存在情况不?/p>

 

1

)头结点:头结点对于单链表来说,头结点可有可无,但为了操作方便,一般情况下单链

表都具有头结点?/p>

 

2

)首元结点:首元结点如果单链表有头结点,则首元结点为头结点的下一个结点,如果?

链表没有头结点,则首元结点就是单链表的第一个结点?/p>

 

3

)头指针:头指针如果单链表有头结点,则头指针指向头结点,如果单链表没有头结点?

则头指针指向第一个首元结点?/p>

 

 

 

4. 

设计一个算法,将元?/p>

x

插入到一个有序(从小到大排序)顺序表的适当位置上,并保

持有序性?/p>

 

答:通过比较在顺序表

L

中找到插?/p>

x

的位?/p>

i

,将该位置及后面的元素均后移一个位置,

?/p>

x

插入到位?/p>

i

中,最后将

L

的长度增?/p>

1

。对应算法如下:

 

Void Insert

?/p>

SqList *&L,ElemType x

?/p>

 

{ 

 

 

int i=0,j;

 

 

 

 

 

while (i<L

-

>length && L

-

>data[i]<x) i++;

 

Ͼλ
新建
上传
首页
助手
最?/div>
资料?/div>
工具

数据结构平时作业

 

 

1

.评价一个好的算法,应该从哪几方面来考虑的?

 

答:

1

、算法的正确性,

2

、算法的易读性,

3

、是算法的健壮性,

4

、是算法的时空效率(?/p>

行)

?/p>

 

 

2. 

简述线性表的顺序和链式两种存储结构各自的主要特点?/p>

 

答:

1

、顺序存储结构:存储单元地址连续,它以“物理位置相邻”来表示线性表中数据元

素间的逻辑关系?/p>

可随机存取表中任一元素?/p>

但它也使得插入和删除操作需移动大量?/p>

数据元素?/p>

由于顺序表需要一组地址连续的存储单元,

对于长度可变的线性表就需要预

分配足够的空间,

有可能使一部分存储空间长期闲置不能充分利用?/p>

也可能由于估计不

足,

当表长超过预分配的空间而造成溢出?/p>

在这种情况下?/p>

又难于扩充连续的存储空间?/p>

 

2

、链式存储结构:存储单元地址为任意一组,它的存储单元可以是连续的,也可以?/p>

不连续的?/p>

甚至是零散分布在内存中的任意位置上的?/p>

因此?/p>

链表中结点的逻辑次序?/p>

物理次序不一定相同?/p>

在表示数据元素之间的逻辑关系时,

除了存储其本身的信息之外?/p>

还需存储一个指示其直接后继的信息(即直接后继的存储位置?/p>

,这两部分信息组成数

据元素的存储映像,称为结点(

node

?/p>

 

 

3. 

说明在线性表的链式存储结构中,试述头结点

,

首元结点

,

头指针这三个概念的区?/p>

.

 

答:头结点、首元结点、头指针区别为:性质不同、目的不同、存在情况不同?/p>

 

一、性质不同

 

1

)头结点:头结点是在链表的首元结点之前附设的一个结点?/p>

 

2

)首元结点:首元结点是指链表中存储线性表中第一个数据元?/p>

a1

的结点?/p>

 

3

)头指针:头指针是指向链表中第一个结点(或为头结点或为首元结点)的指针?/p>

 

二、目的不?/p>

 

1

)头结点:头结点为了方便操作链表而附设的?/p>

 

2

)首元结点:首元结点作为链表的开始结点?/p>

 

3

)头指针:头指针为了指向链表的基地址?/p>

 

三、存在情况不?/p>

 

1

)头结点:头结点对于单链表来说,头结点可有可无,但为了操作方便,一般情况下单链

表都具有头结点?/p>

 

2

)首元结点:首元结点如果单链表有头结点,则首元结点为头结点的下一个结点,如果?

链表没有头结点,则首元结点就是单链表的第一个结点?/p>

 

3

)头指针:头指针如果单链表有头结点,则头指针指向头结点,如果单链表没有头结点?

则头指针指向第一个首元结点?/p>

 

 

 

4. 

设计一个算法,将元?/p>

x

插入到一个有序(从小到大排序)顺序表的适当位置上,并保

持有序性?/p>

 

答:通过比较在顺序表

L

中找到插?/p>

x

的位?/p>

i

,将该位置及后面的元素均后移一个位置,

?/p>

x

插入到位?/p>

i

中,最后将

L

的长度增?/p>

1

。对应算法如下:

 

Void Insert

?/p>

SqList *&L,ElemType x

?/p>

 

{ 

 

 

int i=0,j;

 

 

 

 

 

while (i<L

-

>length && L

-

>data[i]<x) i++;

 

">
新建
上传
首页
助手
最?/div>
资料?/div>
工具

数据结构平时作业

 

 

1

.评价一个好的算法,应该从哪几方面来考虑的?

 

答:

1

、算法的正确性,

2

、算法的易读性,

3

、是算法的健壮性,

4

、是算法的时空效率(?/p>

行)

?/p>

 

 

2. 

简述线性表的顺序和链式两种存储结构各自的主要特点?/p>

 

答:

1

、顺序存储结构:存储单元地址连续,它以“物理位置相邻”来表示线性表中数据元

素间的逻辑关系?/p>

可随机存取表中任一元素?/p>

但它也使得插入和删除操作需移动大量?/p>

数据元素?/p>

由于顺序表需要一组地址连续的存储单元,

对于长度可变的线性表就需要预

分配足够的空间,

有可能使一部分存储空间长期闲置不能充分利用?/p>

也可能由于估计不

足,

当表长超过预分配的空间而造成溢出?/p>

在这种情况下?/p>

又难于扩充连续的存储空间?/p>

 

2

、链式存储结构:存储单元地址为任意一组,它的存储单元可以是连续的,也可以?/p>

不连续的?/p>

甚至是零散分布在内存中的任意位置上的?/p>

因此?/p>

链表中结点的逻辑次序?/p>

物理次序不一定相同?/p>

在表示数据元素之间的逻辑关系时,

除了存储其本身的信息之外?/p>

还需存储一个指示其直接后继的信息(即直接后继的存储位置?/p>

,这两部分信息组成数

据元素的存储映像,称为结点(

node

?/p>

 

 

3. 

说明在线性表的链式存储结构中,试述头结点

,

首元结点

,

头指针这三个概念的区?/p>

.

 

答:头结点、首元结点、头指针区别为:性质不同、目的不同、存在情况不同?/p>

 

一、性质不同

 

1

)头结点:头结点是在链表的首元结点之前附设的一个结点?/p>

 

2

)首元结点:首元结点是指链表中存储线性表中第一个数据元?/p>

a1

的结点?/p>

 

3

)头指针:头指针是指向链表中第一个结点(或为头结点或为首元结点)的指针?/p>

 

二、目的不?/p>

 

1

)头结点:头结点为了方便操作链表而附设的?/p>

 

2

)首元结点:首元结点作为链表的开始结点?/p>

 

3

)头指针:头指针为了指向链表的基地址?/p>

 

三、存在情况不?/p>

 

1

)头结点:头结点对于单链表来说,头结点可有可无,但为了操作方便,一般情况下单链

表都具有头结点?/p>

 

2

)首元结点:首元结点如果单链表有头结点,则首元结点为头结点的下一个结点,如果?

链表没有头结点,则首元结点就是单链表的第一个结点?/p>

 

3

)头指针:头指针如果单链表有头结点,则头指针指向头结点,如果单链表没有头结点?

则头指针指向第一个首元结点?/p>

 

 

 

4. 

设计一个算法,将元?/p>

x

插入到一个有序(从小到大排序)顺序表的适当位置上,并保

持有序性?/p>

 

答:通过比较在顺序表

L

中找到插?/p>

x

的位?/p>

i

,将该位置及后面的元素均后移一个位置,

?/p>

x

插入到位?/p>

i

中,最后将

L

的长度增?/p>

1

。对应算法如下:

 

Void Insert

?/p>

SqList *&L,ElemType x

?/p>

 

{ 

 

 

int i=0,j;

 

 

 

 

 

while (i<L

-

>length && L

-

>data[i]<x) i++;

 

Ͼλ">
Ͼλ
Ŀ

华工2019数据结构平时作业 - 百度文库
新建
上传
首页
助手
最?/div>
资料?/div>
工具

数据结构平时作业

 

 

1

.评价一个好的算法,应该从哪几方面来考虑的?

 

答:

1

、算法的正确性,

2

、算法的易读性,

3

、是算法的健壮性,

4

、是算法的时空效率(?/p>

行)

?/p>

 

 

2. 

简述线性表的顺序和链式两种存储结构各自的主要特点?/p>

 

答:

1

、顺序存储结构:存储单元地址连续,它以“物理位置相邻”来表示线性表中数据元

素间的逻辑关系?/p>

可随机存取表中任一元素?/p>

但它也使得插入和删除操作需移动大量?/p>

数据元素?/p>

由于顺序表需要一组地址连续的存储单元,

对于长度可变的线性表就需要预

分配足够的空间,

有可能使一部分存储空间长期闲置不能充分利用?/p>

也可能由于估计不

足,

当表长超过预分配的空间而造成溢出?/p>

在这种情况下?/p>

又难于扩充连续的存储空间?/p>

 

2

、链式存储结构:存储单元地址为任意一组,它的存储单元可以是连续的,也可以?/p>

不连续的?/p>

甚至是零散分布在内存中的任意位置上的?/p>

因此?/p>

链表中结点的逻辑次序?/p>

物理次序不一定相同?/p>

在表示数据元素之间的逻辑关系时,

除了存储其本身的信息之外?/p>

还需存储一个指示其直接后继的信息(即直接后继的存储位置?/p>

,这两部分信息组成数

据元素的存储映像,称为结点(

node

?/p>

 

 

3. 

说明在线性表的链式存储结构中,试述头结点

,

首元结点

,

头指针这三个概念的区?/p>

.

 

答:头结点、首元结点、头指针区别为:性质不同、目的不同、存在情况不同?/p>

 

一、性质不同

 

1

)头结点:头结点是在链表的首元结点之前附设的一个结点?/p>

 

2

)首元结点:首元结点是指链表中存储线性表中第一个数据元?/p>

a1

的结点?/p>

 

3

)头指针:头指针是指向链表中第一个结点(或为头结点或为首元结点)的指针?/p>

 

二、目的不?/p>

 

1

)头结点:头结点为了方便操作链表而附设的?/p>

 

2

)首元结点:首元结点作为链表的开始结点?/p>

 

3

)头指针:头指针为了指向链表的基地址?/p>

 

三、存在情况不?/p>

 

1

)头结点:头结点对于单链表来说,头结点可有可无,但为了操作方便,一般情况下单链

表都具有头结点?/p>

 

2

)首元结点:首元结点如果单链表有头结点,则首元结点为头结点的下一个结点,如果?

链表没有头结点,则首元结点就是单链表的第一个结点?/p>

 

3

)头指针:头指针如果单链表有头结点,则头指针指向头结点,如果单链表没有头结点?

则头指针指向第一个首元结点?/p>

 

 

 

4. 

设计一个算法,将元?/p>

x

插入到一个有序(从小到大排序)顺序表的适当位置上,并保

持有序性?/p>

 

答:通过比较在顺序表

L

中找到插?/p>

x

的位?/p>

i

,将该位置及后面的元素均后移一个位置,

?/p>

x

插入到位?/p>

i

中,最后将

L

的长度增?/p>

1

。对应算法如下:

 

Void Insert

?/p>

SqList *&L,ElemType x

?/p>

 

{ 

 

 

int i=0,j;

 

 

 

 

 

while (i<L

-

>length && L

-

>data[i]<x) i++;

 



ļ׺.doc޸Ϊ.docĶ

  • xx˾չշعܽ
  • ׶԰ģʽʵо
  • NFCԭӦǰ
  • רҵʸ
  • õϵʽ
  • ְ컯
  • 2019----سȫҵλĸﶯԱϵĽ
  • ͵һĿ
  • ƶȻ
  • ⡿2019갲ʡѧҵˮƽʷԾ()

վ

԰ Ͼλ
ϵͷ779662525#qq.com(#滻Ϊ@)