当前位置: 首页> 科技> 数码 > 单链表核心操作代码

单链表核心操作代码

时间:2025/9/16 20:54:07来源:https://blog.csdn.net/m0_56332819/article/details/141970170 浏览次数:0次

头插法建立单链表

代码:

void createListByHead(LinkList &L,int n){LNode *s;//移动指针s int x;//要插入的元素 L = (LinkList)malloc(sizeof(LNode));//创建头结点 L->next=NULL;//初始化头结点 for(int i=0;i<n;i++){scanf("&d",&x);//输入要插入的值 s=(LNode*)malloc(sizeof(LNode));//创建要插入的节点 s->data=x;//将要插入的值,赋给插入的节点 //头插法插入 s->next=L-next;L->next=s;}
}

尾插法建立单链表

代码:

void createListByTail(LinkList &L,int n){LNode *s,*r=L;//移动指针s和表尾指针r int x;//要插入的元素 L = (LinkList)malloc(sizeof(LNode));//创建头结点 for(int i=0;i<n;i++){scanf("%d",&x);s=(LNode*)malloc(sizeof(LNode));//创建要插入的节点 s->data=x;//将要插入的值,赋给插入的节点 //尾插法插入r->next=s;r=s;}r->next=NULL;//最后尾指针置空 
} 

按序号插找节点

代码:

LNode* getElemBypos(LinkList L ,int i){if(i==0) return L;//i为0,返回头结点 if(i<0) return NULL;//i小于0,返回空 int count =1;//计数,从1开始 LNode* p=L->next;//指向第一个节点 while(p!=NULL&&count<i){//遍历链表 p=p->next;count ++;} return p;//返回找到的节点 
} 

按值查找节点

代码:

LNode* locateElemByvalue(LinkLinst L,ElemType e){LNode* p=L->next;//指向第一个元素 while(p!=NULL&&p->data!=e){//遍历链表 p=p->next;} return p;//返回找到的节点 
} 

求有头节点的单链表长度

代码:

int length(LinkList L){int len=0;LNode* p=L->next;while(p!=NULL){len++;p=p->next;}return len;
} 

将值为x的节点插入到单链表的第i个位置

代码:

bool InsertNode(LinkList L,int i,ElemType x){LNode* p;int count=0p=L;while(p!=NULL && count<i-1){//找到第i-1个值 p=p->next;count++;}if(p==NULL) return false;//i值不合法 LNode* s=(LNode*)malloc(sizeof(LNode));s->data=x;x->next=p->next;p->next=s;return true;} 

将单链表的第i个位置上的节点删除

代码:

bool deleteNode(LinkList &L,int i,ElemType e){LNode* p=L;int count=0;while(p != NULL && count<i-1){//找到第i个值 p=p->next;count++;}if(p==NULL || p->next==NULL){//i值不合法 return false;}LNode* s=p->next;//临时指针,指向要删除的节点 e=s->data;p->next=s->next;//将要删除的取下来 free(s);//释放空间 return true;
} 

关键字:单链表核心操作代码

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: