数据结构实用教程第二版答案_徐孝凯修订版精要
第一章绪习 题 一
1.有下列几种用二元组表示的数据结构,试画出它们分别对应的图形表示(当出现多个关系时,
对每个关系画出相应的结构图),并指出它们分别属于何种结构。
⑴ A=(K,R)其中
K={a1,a2,a3...,an}
R={}
⑵ B=(K,R)其中
K={a,b,c,d,e,f,g,h}
R={r}
r={a,b,b,c,c,d,d,e,e,f,f,g,g,h}
⑶ C=(K,R)其中
K={a,b,c,d,f,g,h}
R={r}
r={d,b,d,g,b,a,b,c,g,e,g,h,e,f}
⑷ D=(K,R)其中
K={1,2,3,4,5,6}
R={r}
r={(1,2),(2,3),(2,4),(3,4),(3,5),(3,6),(4,5),(4,6)}
⑸ E=(K,R)其中
K={48,25,64,57,82,36,75,43}
R={r1,r2,r3}
r1={48,25,25,64,64,57,57,82,82,36,36,75,75,43}
r2={48,25,48,64,64,57,64,82,25,36,82,75,36,43}
r3={25,36,36,43,43,48,48,57,57,64,64,75,75,82}
解:⑴是集合结构;⑵是线性结构;⑶⑷是树型结构;⑸散列结构。只作为参考。
2.设计二次多项式ax2+bx+c的一种抽象数据类型,假定起名为QIAdratic,
该类型的数据部分分为三个系数项a、b和c,操作部分为:(请写出下面每一个
操作的具体实现)。
⑴ 初始化数据成员ab和c(假定用记录类型Quadratie定义成员),每个数据成
员的默认值为0。
Quadratic InitQuadratic(float aa=0,float bb=0,float cc=0);
解:
Quadratic InitQuadratic(float aa,float bb,float cc)
{
Quadratic q;
q.a=aa;
q.b=bb;
q.c=cc;
return q;
}
⑵ 做两个多项式加法,即使对应的系数相加,并返回相加的结果。
Quadratic Add(Quadratic q1,Quadratic q2);
解:
Quadratic Add(Quadratic q1,Quadratic q2);
{
Quadratic q;
q.a=q1.a+q2.a;
q.b=q1.b+q2.b;
q.c=q1.c+q2.c;
return q;
}
⑶ 根据给定x的值计算多项式的值。
float Eval(Quadratic q,float x);
解:
float Eval(Quadratic q,float x)
{
return(q.a*x*x+q.b*x+q.c);
}
⑷ 计算方程ax2+bx+c=0的两个实数根,对于有实根、无实根和不是实根方程
(即a==0)这三种情况要返回不同的整数值,以便于工作调用函数做不同的处理。
int Root(Quadratic q,float r1,float r2);
解:
int Root(Quadratic q,float r1,float r2)
{
if(q.a==0)return -1;
float x=q.b*q.b-4*q.a*q.c;
if(x=0){
r1=(float)(-q.b+sqrt(x))/(2*q.a);
r2=(float)(-q.b-sqrt(x))/(2*q.a);
return 1;
}
else
return 0;
}
⑸ 按照ax**2+bx+c的格式(x2用x**2表示)输出二次多项式,在输出时要注意
去掉系数为0的项,并且当b和c的值为负时,其前不能出现加号。
void Print(Quadratic q)
解:
void Print(Quadratic q)
{
if(q.a) coutq.ax**2;
if(q.b)
if(q.b0)
cout+q.bx;
else
coutq.bx;
if(q.c)
if(q.c0)
cout+q.c;
else
coutq.c;
coutend1;
}
3.用c++函数描述下列每一个算法,并分别求出它们的时间复杂度。
⑴ 比较同一简单类型的两个数据x1和x2的大小,对于x1x2,x1=x2和x1x2这三种不同
情况分别返回=和字符。假定简单类型用SimpleType表示,它可通过typedef
语句定义为任一简单类型。
解:
char compare(SimpleType x1,SimpleType x2)
{
if(x1x2) return;
else if(x1==x2) return =
您可能关注的文档
- 数据结构(Java)-第3章精要.ppt
- 数据结构(线性表)精要.docx
- 数据结构--例题精要.doc
- 数据结构(C语言版)(第2版)课后习题答案精要.doc
- 数据结构-PPT第三章-栈和队列精要.ppt
- 数据结构-习题集答案-(C语言版严蔚敏)精要.doc
- 数据挖掘概论精要.ppt
- 数据结构 第二章 线性表精要.pptx
- 数据结构-第1章绪论精要.ppt
- 数据结构-第2章线性表精要.ppt
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 髌骨脱位康复护理新进展.pptx VIP
- 58同城加盟合同范本.docx VIP
- 急救医学-第四章心悸.ppt VIP
- 高中数学必修第四册第十一章综合测试01含答案解析.pdf VIP
- 2022年高考物理核心高频考点专题22 圆周运动的轻绳、轻杆模型(解析版).pdf VIP
- 马工程-中国古代文学史(第二版)上册第三编魏晋文学全套PPT课件50109.pptx
- 马工程-中国古代文学史(第二版)上册第二编秦汉文学全套PPT课件-50109.pptx
- 58同城同镇代理加盟流程说明.docx VIP
- 马工程-中国古代文学史(第二版)上册第一编先秦文学全套PPT课件-50109.pptx
- 58同城加盟合同范本.docx VIP
原创力文档

文档评论(0)