c语言数据结构,单链表中的头插法求解释

使用头插法,L为头指针,s->next=L->next,L->next=s分别是什么意思,L-.>next可以改成L么?就这两个问题

L这个头结点是不存储数据的,L->next L的下个结点才存储数据,为实际的第一个结点
s->next=L-next 新插入的结点s放在第一个结点前面,变为新的第一个结点,L->next=s 这句让L->next指向新的第一个结点
L->next改为L s->next=L ,L=s可以,这样头指针就是实际存储数据的第一个结点
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-02-15
比如 指针L指向节点A,节点A的成员指针next指向节点C,s指针指向节点B

s->next = L->next; // 节点B的成员指针next指向节点C
L->next = s; // 节点A的成员指针next指向节点B

最终得到结果 :
指针L指向节点A,L->next(节点A成员指针next指向节点B) == s
指针s指向节点B,节点B成员指针next节点C

就形成链表的 A->B->C
例如:
// 指针L指向节点A,节点A的成员指针next指向节点B
L = L->next; // L指针指向节点B
// 节点B的成员指针next指向C
L = L->next; // L指针指向节点C

数据结构单链表头插法和尾插法是什么意思?
Head->next = p;如果是不带头结点的链表那么对应是 p->next = Head;Head = p;而尾插法是将新增节点插在链表尾部,for(t = Head; t->next; t=t->next); \/\/结束时t指向尾节点 p->next = NULL; \/\/进行插入 t->next = p;...

数据结构单链表头插法和尾插法是什么意思?
头插法是新增节点总是插在头部,以带头结点链表为例,链表头指针是Head,新增节点p。数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。数据...

【数据结构】单链表的建立——头插法与尾插法
这里的重点就是:每次生成的新结点都是要与头结点相连接的,每个新结点都插在了原来第一个节点的前面。通过这种方法建立的链表是后来居前的,也就是链表是逆序的。因此,当有题目让我们实现线性表的逆序表示,就应该首先考虑头插法。图示为:其中,指针H始终指向头结点,指针s指向新结点。①表示初始化...

【数据结构】单链表的建立---头插法与尾插法
单链表的建立是数据结构中一个基本操作,涉及头插法与尾插法。头插法从空表开始,逐个插入新结点至链表头,形成逆序链表。反之,尾插法则将新结点插入至链表尾部,生成顺序链表。无论方法如何,每次插入新结点仅需调整头或尾指针,复杂度为O(n)。理解这两种方法对于解决相关问题至关重要。通过实践和理...

数据结构尾插和头插的区别是什么
头插法:新插入的元素始终成为当前第一个元素 尾插法:新插入的元素始终成为当前最后一个元素

大家看数据结构中 头插法和尾插法,,为什么尾插法要设置最后一个节点为...
首先说头插法是在链表的开始插入节点,所以他必有后继 所以要设置其起后继指针为插入前的头结点。而 尾插法是在链表的尾部插入节点所以修改原链表的尾部的后继指针为新节点 而新节点以是尾部无后继结点 所以尾插法的节点后继为NULL

前插法和后插法的区别 前插法和后插法有什么区别
前插法和后插法的区别为:前插法是将新数据插入到链表(或其它)的首端,后插法是将新数据插入到链表(或其它)的尾端。前插法和后插法是数据结构中链表的两种不同插入方法,多用于建立单链表。前插法又叫头插法、前插入,后插法又叫尾插法、后插入。

头插法思路是什么
算法思路:从一个空表开始,重复读入数据,生成新结点,将读入数据存放在新结点的数据域中,然后将新结点插入到当前链表的表头上,直到读入结束标志为止。给你个学习数据结构的网站吧,有flash的模拟,觉得很不错,你可以去看看 http:\/\/student.zjzk.cn\/course_ware\/data_structure\/web\/xianxingbiao\/xian...

c语言数据结构单链表的初始化 插入 销毁 元素的取出 删除 操作 求详细C...
\/\/链表建立 Node* creat(){ Node *head = NULL, *p = NULL, *s = NULL;int Date = 0, cycle = 1;head = (Node*)malloc(sizeof(Node));if(NULL == head){ printf("分配内存失败\\r\\n");return NULL;} head->pstnext = NULL;p = head;while(cycle){ printf("请输入数据且当...

【数据结构】C\/C++ 单链表的 创建、初始化、增、删、改、查、遍历等基 ...
C\/C++单链表的基本操作包括创建、初始化、增删改查和遍历等。首先,定义链表结构,包括数据域和指向下一个节点的指针。头插法建立链表函数Creat_LinkList()的工作流程是:动态分配链表节点,输入用户数据,通过循环将节点依次插入到链表头部,直到用户输入0为止。尾插法的创建函数Creat_LinkList_R()则是...

相似回答