数据结构习题集c语言版
㈠ 求《数据结构》c语言版 比较有效的练习题集推荐
数据结构辅导与习题精解 C语言版(陕西师范大学出版社),是严蔚敏 吴伟民编写的《数据结构(C语言版)》配套的习题解析。
《数据结构习题与解析》李春葆编写,很有名,考研专用。
另外网络输入“数据结构习题”,可以搜出很多,有不少还附带答案。
㈡ 数据结构C语言版题集答案 要全部的
清华大学出版社,严蔚敏,吴伟民两位老师合着的《数据结构》(c语言版)这本书吧。
我在用这本书学习的过程中,碰到了一个及其困惑的问题,“&”的在形参表中的使用问题,现以链表一节举例说明:
//------线性表的单链表存储结构------
typedef struct LNode{
ElemType data;
struct LNode *next;
}LNode, *LinkList;
㈢ 数据结构的习题(C语言版)
第一个问题,分析下要求,可以知道要做的事情是合并两个数组到一个数组里去,数组C的长度是AB之和。表C的第一个字符不是A的第一个字符就是B的第一个字符。因此接下来要做的事情就是做一个长度为AB之和的循环,每一次找出A或B中的最小元素,存到C里面去,循环结束,C就自动有了。
第二个问题,有时间和空间的要求,不太容易,只有更好,没有最好。不过提供一个思路。可以首先扫描整个数列,将奇数偶数的位置和个数标注出来,存在一个数列中。例如数列奇 奇 偶 奇 奇,可以得到奇数个数为4,位置为[0,1,3,4],偶数为1,位置为[2],因此要生成的数列中前4个必定为奇数,而题目中没有对大小的要求,因此只用将偶数与最后面的奇数对换位置即可。对换的次数即为偶数的个数。
大概思路如此,不过有很多方法可以高效的存储和计算,具体实现,希望你能亲自琢磨下,还可以巩固一下C技巧。
祝好,有问题可以探讨。
㈣ 严蔚敏《数据结构题集》(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
新浪共享网的资源 ,可以直接在上面搜想要的资料,有很多是免费的呦。。。。。。
㈤ 严蔚敏《数据结构(C语言版)习题集》答案
这不能发网站,告诉你在哪找。
上网络文库,搜索 “严蔚敏《数据结构(C语言版)习题集》答案 ”
结果中第一个就是了
㈥ 数据结构(c语言版)题目求答案
3.28
void InitCiQueue(CiQueue&Q)//初始化循环链表表示的队列Q
{
Q=(CiLNode*)malloc(sizeof(CiLNode));
Q->next=Q;
}//InitCiQueue
voidEnCiQueue(CiQueue&Q,int x)//把元素x插入循环列表表示的队列Q,Q指向队尾元素,Q->next指向头结点,Q->next->next指向队尾元素
{
p=(CiLNode*)malloc(sizeof(CiLNode));
p->data=x;
p->next=Q->next;//直接把p加在Q的后面
Q->next=p;
Q=p;//修改尾指针
}
Status DeCiQueue(CiQueue&Q,int x)//从循环链表表示的队列Q头部删除元素x
{
if(Q==Q->next)return INFEASIBLE;//队列已空
p=Q->next->next;
x=p->data;
Q->next->next=p->next;
free(p);
rturn OK;
}//DeCiqueue
3.31
int Palindrome_Test()
{
InitStack(S);InitQueue(Q);
while((c=getchar())!='@')
{
Push(S,c);EnQueue(Q,c);
}
while(!StackEmpty(S))
{
pop(S,a);DeQueue(Q,b);
if(a!=b)return ERROR;
}
return OK;
}
㈦ 数据结构(C语言版)课后习题,求大佬解答
#include<stdio.h>
void f(char *s,char *ss,int n) { int i,k,m; char *p,*q,*r;
k=0; r=ss; while ( *r ) { r++; k++; } //找到ss的末尾0,计算ss长度
m=0; q=s; while ( *q ) { q++; m++; } //找到s的末尾0
p=q; q+=k; *q=0; q--; //计算新字符串结尾位置
for ( i=0;i<m-n;i++,p--,q-- ) *q=*p; //将s最后k个字符后移k位
for ( i=0,r--;i<k;i++,q--,r-- ) *q=*r; //将ss倒序复制到s中空出来位置
}
void main() { char s[256],ss[256]; int n;
scanf("%s%s%d",s,ss,&n); f(s,ss,n); printf("%s ",s);
}
㈧ 下面这是严蔚敏《数据结构C语言版》习题集6.36的答案,这是类C,还是纯C语言,还是C++
基本上就是C语言,返回值它直接写了一个Status,程序里的返回值是TRUE和FALSE,如果把STATUS改成BOOL就是标准的C语言了。C语言是C++的一个子集,这个程序也可以认为是C++写的。
㈨ 《数据结构习题集》C语言版 严蔚敏这本书对初学如何,是不是还是伪码,
对初学者有点难度吧,主要是看自身基本功是否扎实