数据结构-第二版--课后答案-(陈雁-著)-高等教育出版社.pdf
文本预览下载声明
第 一 章
习题
1、简述下列术语:
数据元素、数据、数据对象、数据结构、存储结构和算法
解:
数据元素 :数据的基本单位。在计算机程序中通常作为一个整体进行考虑和处理。
数据 :信息的载体。 是描述客观事物的数字、 字符以及所有能输入到计算机中并被计算机程序处理的符
号的集合。
数据对象 :性质相同的数据元素的集合,是数据的一个子集。
数据结构 :相互之间存在着一种或多种关系的数据元素的集合, 包括数据的逻辑结构和物理结构两方面的内
容。
存储结构 :数据的逻辑结构在计算集中的表示方式,包含顺序存储方法、链接存储方法、索引存储方法、散
列存储方法。
算法 : 对特定问题求解步骤的一种描述,它是指令或语句的有限序列,并具有有穷型、确定性、可行
性、输入和输出五个重要特性。
2 、试写一算法,自大至小依次输出顺序读入的三个整数 x ,y 和 z 的值
解:
void f1(void)
{
int x,y,z;
printf(enter x,y,z:);
scanf(%d,%d,%d,x,y,z);
if(xy)
if(yz)
printf(%d,%d,%d,x,y,z);
else
if(xz)
printf(%d,%d,%d,x,z,y);
else
printf(%d,%d,%d,z,x,y);
else
if(xz)
printf(%d,%d,%d,y,x,z);
else
if(zy)
printf(%d,%d,%d,z,y,x);
else
printf(%d,%d,%d,y,z,x);
}
3、举出一个数据结构的例子,叙述其逻辑结构、存储结构、运算等三方
面的内容
解:
4 、分析下列算法的时间复杂度:
(1)
int prime(int n)
{
for(i=2;isqrt(n);i++)
if(n%i==0)
return 0;
return 1;
}
解:
1/2
O(n )
(2 )
long sun(int n)
{
s=0;
for(i=1;i=n;i++)
{
for(p=1,j=1;ji;j++)
p=p*j;
s+=p;
}
return s;
}
解:
2
O(n )
第二章
习 题
1、描述以下三个概念的区别:头指针、头结点、首元结点(第一个元素
结点)。
头指针 :指针,指向头节点的指针
头结点 :结点,其指针域指向首元节点
首元结点 :结点,第一个元素的表示形式
2 、试比较顺序存储结构和链式存储结构的优缺点。
优点 缺点
顺序存储 可随机存储 实现插入、删除时
显示全部