首页 > 代码库 > 单链表的建立和增删改查代码及讲解
单链表的建立和增删改查代码及讲解
//---单链表的单链式存储结构---- typedef struct LNode { ElemType data; struct LNode *next; }LNode,*LinkList; //1.初始化 int Initlist(LinkList L) { L=NULL; return OK; } //初始化(带头结点) int Initlist(LinkList L) { L=(LNode*)malloc(sizeof(Lnode));//为头结点分配内存空间 L->next=NULL; return OK; } //求长度 int length_L(LinkList L) { i=0; p=L->next;//把第一个数据赋给p while(p)//但p不为空的时候,那就一直计数 { i++; p=p->next; } return i; } //3.访问第I个元素 Status GetElem_L(LinkList L,int i,ElemType &e) //L为带头结点的单链表的头指针 { p=L->next;//p是链表的第一个元素 j=1; while(p&&j<i)//当p指针存在并且没有到底i个元素的时候 { p=p->next;//让p向前移动 j++;//让J也自加1,直到J=I } if(!p||j>i)//找到最后还没有找到是,返回ERROR return ERROR; e=p->data;//把找到的数值赋给e,然后返回。 return OK; } //4.在p所指节点之后插入某一元素 q=(LinkList)malloc(sizeof(LNode)) q->data=http://www.mamicode.com/x;//数据域赋值>单链表的建立和增删改查代码及讲解
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。