- 1、本文档共49页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构上机测试题
编写算法,将二个升序链表在原表空间内归并成一个升序链表。
#includestdio.h
#includestdlib.h
typedef struct elemtype
{
int data;
struct elemtype *next;
} LinkList;
LinkList *UnionList(LinkList *la,LinkList *lb)
{
LinkList *pa=la-next,*pb=lb-next,*s,*r=la;
while(pa!=NULLpb!=NULL)
{
if(pa-datapb-data)
{
r=pa;
pa=pa-next;
}
else
{
s=(LinkList *)malloc(sizeof(LinkList));
s-data=pb-data;
s-next=pa;
r-next=s;
r=s;
pb=pb-next;
}
}
if(pb!=NULL)
{
r-next=pb;
}
return la;
}
LinkList * Create()
{
LinkList *head;
head=(LinkList*)malloc(sizeof(LinkList));
LinkList *p,*q=head;
int temp=1;
while(1)
{
scanf(%d,temp);
if(temp!=0)
{
p=(LinkList*)malloc(sizeof(LinkList));
p-data=temp;
q-next=p;
q=p;
}
else
{
q-next=NULL;
break;
}
}
return head;
}
void main()
{
LinkList *a,*b,*p;
printf(请输入第一个序列:(以0结束)\n);
a=Create();
printf(请输入第二个序列:(以0结束)\n);
b=Create();
UnionList(a,b);
printf(排序后的序列为:\n);
p=a-next;
while(p!=NULL)
{
printf(%d\n,p-data);
p=p-next;
}
}
编写算法,将二个升序链表在原表空间内归并成一个降序链表。
#includestdio.h
#includemalloc.h
typedef int ElemType;
typedef struct LNode{
ElemType data;
struct LNode *next;
}LinkList;
void CreateList(LinkList *L,ElemType a[],int n){
LinkList *r,*s;
int i;
L=(LinkList *)malloc(sizeof (LinkList));
r=L;
for(i=0;in;i++){
s=(LinkList *)malloc(sizeof (LinkList));
s-data =a[i];
r-next =s;
r=s;
}
r-next=NULL;
}
void DispList(LinkList *L){
LinkList *p=L-next ;
while(p!=NULL){
printf(%d,p-data );
p=p-next ;
}
printf(\n);
}
void DestroyList(LinkList *L){
LinkList *p=L,*q=p-next ;
while(q!=NULL){
free(p);
p=q;
q=q-next ;
}
free(p);
}
LinkList *combine(LinkList *L1,LinkList *L2){
LinkList *p=L1-next ;
LinkList *q=L2-next;
LinkList *r;
while(p!=NULLq!=NULL){
if(p-data q-data ){
r=q;
q=q-next ;
L2-next =q;
r-next =L1-next ;
L1-next =r;
}
els
文档评论(0)