数据结构C语言实现线性表插入键、交换、倒置

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
p=L->next;
printf("交换后输出\n");
while(p!=NULL)
{
printf("%d\n",p->num);
p=p->next;
}
//以下为链表的倒置
p=L;
while(p->next->next!=NULL)
p=p->next;
q=p->next;
q->next=p;
p->next=NULL;
{
printf("%d ",p->num);
p=p->next;
}
}
课题一的具体实验内容
1、构造元素类型为整型的线性表,将以下元素插入分别插入线性表:
<34 56 20 9 15 5>
2、查找表中是否存在元素20,实现元素20与元素9的交换;
3、按照课题要求编写函数,实现线性表元素<34 56 9 20 15 5>的倒置,即倒置后的表应为< 5 15 20 9 56 34 >。
#include<stdio.h>
#include<stdlib.h>
#define NULL 0
struct node
{ int num;
struct node *next;
};
void main()
{ int i;
struct node *L,*s,*p,*h,*q,*k;
L=(node*)malloc(sizeof(struct node));
p=L;
for(i=0;i<wk.baidu.com;i++)
{while(p->next->next!=NULL)
p=p->next;
k=p->next;
k->next=p;
p->next=NULL;
p=L;
}
L->next=q;
//倒置后链表的输出
p=L->next;
printf("倒置后输出\n");
while(p!=NULL)
p=L;
while(p->next->num!=20)
p=p->next;
h=p->next;
p->next=p->next->next;
h->next=p->next->next;
p->next->next=h;
p->next->next->next=h->next;
//free(h);
//以下为链表的输出
//L->num=NULL;
p=L;
printf("请输入\n");
for(i=0;i<6;i++)
{
s=(node*)malloc(sizeof(struct node));
scanf("%d",&s->num);
p->next=s;
p=s;
}
p->next=NULL;
//以上为链表的建立和输入
//以下为元素的交换
相关文档
最新文档