下载此文档

单链表基本操作实验.doc


文档分类:IT计算机 | 页数:约8页 举报非法文档有奖
1/8
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/8 下载此文档
文档列表 文档介绍
单链表基本操作实验.doc: .
实验2链表的操作
实验内容:
1) 基础题:编写链表基本操作函数,链表带有头结点
(1) CreatUst_h()//用头插法建立链表
(2) CreateUst_t(>//用尾插法建立链表
(3) InsertList ()向链表的指定位置插入元素
(4) DeleteUst ()删除链表中指定元素值
(5) FindList ()查找链表中的元素
(6) OutputList ()输出链表中元素
2) 提高题:
(1) 将一个头节点指针为heada的单链表A分解成两个单链表A和B,其头结点指针分别为heada和headb,使得A表中含有原单链表A中序号为奇数的元素,B表中含有原链表 A中序号为偶数的元素,且保持原来的相对顺序。
(2) 将一个单链表就地逆置。
即原表(al, a2, 。。。。。。an),逆置后新表(an,an-1,ooooooo a 1)
程序功能:单链表基本功能操作编程者:杨天啸
円期 :2016-04-14
版本号 :
*/
include <>
//include <>
typedef struct List {
int data;
struct List *next;
}List;
void CreatList_h(List *L) //头插法{
int i = 0; int n = 0; int goal;
List *p;
printf(n请输入数据的个数人n">; scanf("%d",&n);
L -> next = NULL; for(i=0;i<n;i++)
printf("请输入第%(1 个数:\n",i+l}; scanf("%d'&goal);
p = (struct List*)malloc(sizeof(struct List)); p -> data = goal;
p -> next = L->next; //将L指向的地址赋值给p; L -> next = p;
}
}
void CreateList_t(List *L) //尾插法
{
int i; int n; int goal;
List *p;
List *q=L;
printf("请输入数据的个数:\«1"); scanf(,,o/od'\&n);
for (i=0;i<n;i++)
{
printf("请输入第%<1 个数:\n",i+l); scanf("%d",&goal);
p = (struct List*)malloc(sizeof(struct List)); p -> data = goal; q -> next = p;
q = p;
}
q -> next = NULL;
}
void lnsList(List *L,int i'int e) //插入
{
List *s;
List *p = L; int j = 0;
while (p&&j<i-l)
{
p = p->next;
++j;
}
s = (struct List

单链表基本操作实验 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数8
  • 收藏数0 收藏
  • 顶次数0
  • 上传人小博士
  • 文件大小105 KB
  • 时间2018-11-30