当前位置:首页 » 编程语言 » 数据结构c语言版严蔚敏答案

数据结构c语言版严蔚敏答案

发布时间: 2023-03-01 18:10:56

A. 关于严蔚敏c语言版数据结构算法2-4的疑问

1、newBase
=
(ElemType
*)
realloc
(L.elem,
(L.listsize
+
LISTINCREMENT)
*
sizeof(ElemType));
//为初始
顺序表
以LISTINCREMENT
大小
重新增加存储空间,如果去掉L.elem,则新增
空间
的对象不明。
2、增加分配的
代码
意思是,在当前分配空间不足时加ListIncrement大小的空间,不够再加,一直加到空间够用为止,于是就保证了分配的空间足够用了。3、顺序表是从0号位置开始计数的,所以
长度
为Length顺序表最后一位为Length-1,同样,第i个
元素
的位置也就为[i-1]了。4、
源代码
段寻找位置的
原理
是先让一个
指针
q指向要插入数的位置,指针p指向表尾[Length-1],然后比较p,q的值,如果p>=q,就把p指向的元素向后挪一位[Length](也就是表长加1了),P就指向倒数第二个[Length-2]位置;再用p,q做个比较,如果p仍然大于或等于q,那么继续吧p指向的数向后挪一位[Length-1],p又指向下一个数[Length-3],以此内推,
直到最后
p指向第[i-2]那位,此时第[i-1]就为空的,正好把要插入的数插进去。你所给的
算法
,首先把位置和长度都搞错了,你的意思可能是这样的吧:for(p=&L.elem[i-1];p<=&L.elem[L.length-1];++p)
{
*(p+1)=*p;
Length++;}如果是这样的话,那不仅你要插的元素插不进去,反而把从[i-1]位置开始后面所有的元素都被复制成了L.elem[i-1]相同的元素了。

B. 求《数据结构》(C语言,第二版) 严蔚敏、吴伟民主编,清华大学出版社 课后习题答案

http://wenku..com/link?url=-wmTox3c-s9Pk6r0MyGk1N6YqJu-Fya9-LrzhksZfVTfM0R09K9kzLVq9d4_AtX-ZXlPWuZC

C. Data Structures and Algorithm Analysis in C++书后的习题答案

下面是我根据别人的提示和自己的参考总结出的几个阶段的书籍,希望对你有帮助!!

第一阶段:
1::H.M.Deitel和P.J.Deitel的《 C++ How to Program 》(C++大学教程)
2:: 钱能的《C++程序设计教程》
3::Stanley B.lippman着 侯捷 译的《essential c++》
4::Stanley B.Lippman,Josee LaJoie,Barbara E.Moo的《c++ primer》
5::Bjarne Stroustrup的《the c++ programming language》

第二阶段:
1::Scott Meyers的《effective c++》
2::Herb Sutter的《exceptional c++》
3::Scott Meyers的《more effective c++》
4::Herb Sutter的《more exceptional c++》

第三阶段:
1::Stanley B.lippman的《insied the c++ object model》(深度探索C++ 对象模型)
2::Bjarne Stroustrup的《The design and evolution of c++》(C++的设 计与演化)
3::tephen C. Dewhurst的《C++ Gotchas: Avoiding Common Problems in Coding and Design》(C++程序设计陷阱)

第四阶段:
1:: Nicolai M.Josuttis的《the c++ standard library》(C++标准程序库 —自修教程与参考手册)
2::Scott Meyers的《effective stl》
3::Matthew H. Austern的《generic programming and the stl》(泛型编 程与STL)
4::侯捷的 《stl源码剖析》

第五阶段:
1::Herb Sutter的《exeptional c++ style》
2::《c++ template》
3::Andrei Alexandrescu的《modern c++ design》

第六阶段
1::《C++ 输入输出流及本地化》《C++ Network Programming》《大规模C++程序设计》
2::Barbara E.Moo和Andrew Koenig的《Ruminations On C++》(C++ 沉思录)

其他的:
Stanley B. Lippman,《Inside The C++ Object Model》影印版、中文版《深度探索C++对象模型》
Elements of Reusable Object-Oriented software》影印版、中文版《设计模式:可复用面向对象软件的基础》
John Lakos的着作《Large-Scale C++ Software Design》(《大规模C++程序设计》
Andrew Koenig和Barbara Moo在《Accelerated C++: Practical Programming by Example》《Ruminations on C++》
Bruce Eckel,《C++编程思想》

windows编程系列:

Charles Petzold 的 《Programming Windows》(Windows程序设计)
Jeffrey Richter 的《》(Windows核心编程)和《Advanced Windows》(Windows 高级编程指南)

数据结构和算法
1::清华教授严蔚敏和广东工业大学教授吴伟民的《数据结构(C语言版)》
2::清华教授殷人昆的《数据结构(用面向对象方法与C++描述)》
3::经典书籍:Mark Allen Weiss的《Data Structures and Algorithm Analysis in C》(数据结构与算法分析--C语言描述)和《Data Structures and Algorithm Analysis in C++》(数据结构与算法分析--C++语言描述)
4::王晓东的《算法设计与分析》
5::M.H.Alsuwaiyel(沙特)的 《Algorithms Design Techniques and Analysis》(算法设计技巧与分析)
6::经典:Thomas H.Cormen, Charles E.Leiserson的《Introction to Algorithms》(算法导论)
另外,虚机团上产品团购,超级便宜

D. 严蔚敏《数据结构题集》(c语言版)详细答案!

这个在网上还是比较好找的,以前看数据结构的时候也头疼的很,但不用把整本习题集看完的,太费时间了。下载地址1:http://ishare.iask.sina.com.cn/f/7049195.html?from=like
下载地址2:http://ishare.iask.sina.com.cn/f/5078931.html?from=like
新浪共享网的资源 ,可以直接在上面搜想要的资料,有很多是免费的呦。。。。。。

E. 严蔚敏的数据结构(C语言版)最短路径算法 代码段:p[w]=p[v];p[w][w]=true;//p[w]=p[v]+[w]是什么意思

二维数组P中保存的是v0到各个点的最短路径。在v行中,值为true的列连起来,就是v0到v的最短路径。因为v0到w点的最短路径是v0到v的最短路径在加上<v,w>,所以w列先复制所有的v列的值,然后在将p[w][w]=true。此时w行中所有值为true列,就是v0到w的最短路径

F. 严蔚敏数据结构题集(C语言版)实习题答案

/* 用邻接矩阵表示的图的prim算法的源程序*/

#include<stdio.h>
#define MAXVEX 6

typedef char VexType;

typedef float AdjType;

typedef struct {
int n; /* 图的顶点个数 */
/*VexType vexs[MAXVEX]; 顶点信息 */
AdjType arcs[MAXVEX][MAXVEX]; /* 边信息 */
} GraphMatrix;

typedef struct{
int start_vex, stop_vex; /* 边的起点和终点 */
AdjType weight; /* 边的权 */
} Edge;

Edge mst[5];

#define MAX 1e+8

void prim(GraphMatrix * pgraph, Edge mst[]) {
int i, j, min, vx, vy;
float weight, minweight; Edge edge;

for (i = 0; i < pgraph->n-1; i++) {
mst[i].start_vex = 0;
mst[i].stop_vex = i+1;
mst[i].weight = pgraph->arcs[0][i+1];
}

for (i = 0; i < pgraph->n-1; i++) { /* 共n-1条边 */
minweight = MAX; min = i;
for (j = i; j < pgraph->n-1; j++)/* 从所有边(vx,vy)(vx∈U,vy∈V-U)中选出最短的边 */
if(mst[j].weight < minweight) {
minweight = mst[j].weight;
min = j;
}

/* mst[min]是最短的边(vx,vy)(vx∈U, vy∈V-U),将mst[min]加入最小生成树 */
edge = mst[min];
mst[min] = mst[i];
mst[i] = edge;
vx = mst[i].stop_vex; /* vx为刚加入最小生成树的顶点的下标 */

for(j = i+1; j < pgraph->n-1; j++) { /* 调整mst[i+1]到mst[n-1] */
vy=mst[j].stop_vex; weight = pgraph->arcs[vx][vy];
if (weight < mst[j].weight) {
mst[j].weight = weight;
mst[j].start_vex = vx;
}
}
}
}

GraphMatrix graph = {
6,
{{0,10,MAX,MAX,19,21},
{10,0,5,6,MAX,11},
{MAX,5,0,6,MAX,MAX},
{MAX,6,6,0,18,14},
{19,MAX,MAX,18,0,33},
{21,11,MAX,14,33,0}
}
};

int main(){
int i;
prim(&graph,mst);
for (i = 0; i < graph.n-1; i++)
printf("(%d %d %.0f)\n", mst[i].start_vex,
mst[i].stop_vex, mst[i].weight);
return 0;
}

热点内容
javaj2ee 发布:2024-11-07 12:26:17 浏览:787
hmcl服务器地址怎么写 发布:2024-11-07 12:26:10 浏览:542
北京一区服务器ip地址 发布:2024-11-07 12:12:54 浏览:316
dll加密反编译 发布:2024-11-07 12:10:40 浏览:92
lol如何设置服务器忙 发布:2024-11-07 12:04:04 浏览:547
发票价算法 发布:2024-11-07 11:59:02 浏览:603
使命召唤如何退款安卓微信 发布:2024-11-07 11:32:38 浏览:822
优酷上传音乐 发布:2024-11-07 11:28:14 浏览:733
安卓原生系统开发者模式在哪里 发布:2024-11-07 11:22:47 浏览:409
pythongdal安装 发布:2024-11-07 11:07:29 浏览:289