正在加载图片...
Insert sq&La1,2);/*数据元素2插入到线性表La的第1个数据元素之前* insert so(&La1,3);/*数据元素3插入到线性表La的第1个数据元素之前* Insert_sq(&La,4,5);/数据元素5插入到线性表La的第4个数据元素之前* delete sq(&La,1),/*删除线性表La的第1个数据元素* display (La) /*显示线性表La的数据元素* 2单链表 算法举例(带表头结点的单链表) typedef int Elem Type typedef struct LNode f Elem Type data struct LNode *next. A LNode, *LinkList /*可理解为定义两个类型 LNode 结构类型 Linklist 结点指针类型,指向结点 由于头指针是结点指针,所以该类型变量可定义为链表 LNode*p等价于 LinkList p* 水本**客*水常涂本客水水涂水水水水亦**客水*水本客水 功能:初始化单链表,产生头结点 输入:无 ★输出:成功时返回头结点指针 水本水* LinkList Listlnit( L Node Linklist) malloc(sizeof( LNode);倖*产生头结点* s->data=0: S->next-NULL return s /*返回头结点指针 /*幸**幸**幸*****市**春**家*率 功能:线性表插入操作,将某数据元素插入到单链表 的第i个数据元素之前 输入:单链表的头指针L、位置i、待插入的数据元素e 输出:成功时返回OK int ListInsert(LinkList L, int 1, Elem Type e)insert_sq(&La,1, 2); /*数据元素 2 插入到线性表 La 的第1个数据元素之前*/ insert_sq(&La,1, 3); /*数据元素 3 插入到线性表 La 的第1个数据元素之前*/ insert_sq(&La,4 , 5); /*数据元素 5 插入到线性表 La 的第 4 个数据元素之前*/ delete_sq(&La,1); /*删除线性表 La 的第1个数据元素*/ display(La) /*显示线性表 La 的数据元素*/; } 2 单链表 算法举例(带表头结点的单链表): typedef int ElemType; typedef struct LNode { ElemType data; struct LNode *next; } LNode, *LinkList; /*可理解为定义两个类型: LNode ----- 结构类型; LinkList ----- 结点指针类型,指向结点, 由于头指针是结点指针,所以该类型变量可定义为链表 LNode *p 等价于 LinkList p */ /**************************************************** ** 功能:初始化单链表,产生头结点 ** ** 输入:无 ** ** 输出: 成功时返回头结点指针 ** ****************************************************/ LinkList ListInit() { LNode *s; s=(LinkList) malloc(sizeof(LNode)); /*产生头结点*/ s->data=0;s->next=NULL; return s; /*返回头结点指针*/ } /********************************************************** ** 功能:线性表插入操作,将某数据元素插入到单链表 ** ** 的第 i 个数据元素之前 ** ** 输入:单链表的头指针 L、位置 i、待插入的数据元素 e ** ** 输出: 成功时返回 OK ** **********************************************************/ int ListInsert(LinkList L,int i, ElemType e) {
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有