1楼:lzs丶灬
首先把s指向p后面的一个节点,就是把s接到p后面
然后把p指向s这个节点,就是把p指向p后面这个节点
这两句话执行后就是p=s=之前的p->next
2楼:蛋蛋爱你吧
就是把p指向的结点里的next指针指向s,p指向的是最后的一个结点,现在最后的结点是s,所以改变p的指向,让p指向了s,下次循环又是一样,
单链表中p->next=s->next和p->next=s有什么不同?
3楼:
第一式把p和s的下一结点链到一起,s可以删除了,第二式把p和s链到一起从此,s就是链表的一部分了,或者p和s所在的两个链表成一个新的链表了,如果s是一个链表的第一个结点,p是一个单独结点的话p现在就是第一个结点了!通常更新头结点就用第二个方法,先分配新结点p给p的数据赋值,p->next=s,head=p;这是头插法;直接找到最后一个结点p;p->next=s这是尾插法;总之前一个用于删除结点较多,后一个多用于插入结点。
数据结构中,单链表p=l与p=l->next有什么区别?p->next=s与p->next=s-> 10
4楼:热情的
l在数据结构中一般是作为链表头节点的指针,p=l,将p指针也指向头节点。
l->next有两层含义,可以表示l的后继节点指针,又可表示l的指针域,(补充:链表每个节点分为数据域和指针域,(单链表的指针域只有后继指针域,双链表的指针域分为前趋指针域和后继指针域))。第一,当它在等号右边时(即x = l->next形式)一般是指将x指针指向头节点l的后一个节点也就是链表的第一个数据节点;第二,当它在等号左边的时候(即l->next = x),表示将x的值当做地址,写入到l的后继指针域l->next当中,相当于头节点l的后面链接一个数据节点。
基础概念理解后,对于p->next=s与p->next=s->next就好理解了,p->next=s:将指针变量s的值写入p的后继指针域,相当于p数据节点后又链接一个指针s指向数据节点,p->next=s->next:将s节点后接的节点的地址写入到p节点的后继指针域,相当于p节点插入到原先s节点与s的后接节点中间。
中间逻辑建议画图理一遍,理顺了以后再见到就能很快看明白的。
5楼:匿名用户
p和l都是数据结构对象吗 p=l是把数据结构l的每个变量的值赋给p 另个是把l里的next变量的值赋给p 第二种好像错的吧。第二个第一种是把s的首地址赋给p的next变量 第二种是把s的next值赋给p的next
6楼:雨后小故事
l->next是l后的下一个数据
链表中已经有p->next=s了,为啥还要p=s?
7楼:已存在这个名字
p是p,p->next是p->next。p的下一个节点(p->next)指向s,此时p->next相当于最后一个节点,p=s是要让下一次能再接一个节点,如此循环。
c语言链表中s->next=p;s=p什么意思
8楼:砍侃看
假设s指向链表的最后一个节点,因为s指向的节点是最后一个,所以s->next是null。假设这时需要将一个新节点p插在链表的结尾,很明显我们需要让最后一个节点指向p,于是s->next=p;就可以让最后一个节点指向p,这时p就是最后一个节点。s=p就是将s指向p,也就是s这时候指向的还是最后一个节点。
c++ 链表中p=head, p->next=s , s=p的含义?
9楼:匿名用户
首先,你要理解p指针的含义。
根据你的描述,p指针应该是链表内遍历各节点的指针,那么这个指针是不停移动的。
而head指针永远指向链表的头结点。
开始,要让自己声明的指针p指向链表的头结点。所以有p=head;
进行完这个操作后,p指针和head指针同时指向了链表的头结点。
下面,我们要向链表中插入一个节点,那么这个新插入的节点是什么呢,就是指针s指向的节点。因为链表中每个节点的next指针指向了下一个节点的地址,因此有
p->next=s;
这句话的意思是,让s指针指向的节点连接在p指针指向节点的后面。
最后,我们又要插入新的节点,那么,必定是要插入在刚才s节点之后的位置,因此,需要移动p指针到刚才s指针指向的节点的位置,所以有
p=s;
记住,链表中,永远只有一个指针移动,这个指针就是p指针。
10楼:enjoy冰心玉壶
我想上面的**应该是在建立链表时需要的。比如有下面的数据结构:
structnode
;链表中一般都有头结点,就是head,其中可以存放数据,也可以不存放数据。在动态建立链表的过程中,肯定需要定义一个新的结点,比如pnext。
pnext=(structnode*)malloc(sizeof(structnode));
这时候应该将头结点head的next域指向该新的结点。但是head一般不移动,因为移动后就找不到头结点了。所以定义一个指针p,p在开始时指向头结点,就是
p=phead;
建立完新的结点后,p的next域指向该新结点。由于下一次还要建立新节点,所以p要再指向现在已经建立好的新结点。这样下一次建立新的结点时才能正确指向该节点。
不知道表达的好不好,把源程序复制在下面吧,应该看一下程序就懂了。
#include
#include
structnode
;structnode*create_list();
voiddisplay_list(structnode*p);
intmain()
structnode*create_list()
returnphead;
}voiddisplay_list(structnode*p)
}程序没有错误的,可以运行,可以看一下create_list()函数,是建立链表,包含你想知道的问题,建立链表是一个循环结构。把运行结果也复制一下
数据结构中:s->next=p->next;p->next=s.怎么解释。
11楼:lb跃鈥冈
s->data=e;//将节点s的data值设置为e
s->next=p->next;//链表指针的赋值,将p的下一个节点的位置付给了s的下一个节点
p->next=s;//实现插入,把s接到p的下一个节点上
12楼:陆舒杰
这个应该是链表里面最常遇见的问题了!
s->next的意思是s指向的某个(如结构体)变量中的next这个成员本身
然后把p->next的地址赋值给s->next,也就是说s->next指向p->next
链表中使用的较多!一个链表的一个节点包括数据域和指针域两部分,s->next指向的是p->next这个节点!
希望帮助到你!
13楼:风啸无名
1) 把p的下一个节点上到s的下一个节点上2) 把s接到p的下一个节点上
3) 把p的一下个节点赋值给s
定义和用法
next() 函数将内部指针指向数组中的下一个元素,并输出。
相关的方法:
prev()- 将内部指针指向数组中的上一个元素,并输出current()- 返回数组中的当前元素的值end()- 将内部指针指向数组中的最后一个元素,并输出reset()- 将内部指针指向数组中的第一个元素,并输出each()- 返回当前元素的键名和键值,并将内部指针向前移动
14楼:足球队联络员
我想了一晚上,得出结论如下
15楼:匿名用户
s指向的是x吧,第一句的意思是把b向后挪一下,第二句的意思是把x插进来。
16楼:岁月丿一殇
虽然有点晚了,我来解释一下。
s->next=p->next的意思很简单,就是把p结点的下一个结点的地址给s结点的下一个结点。
因为这是要在p结点和p->next结点之间插入s结点。所以p->next结点是在s结点之后的,第一句就是这个意思,达成p->next与s的连接,p->next结点就在s结点之后了。
第二句p->next=s 这句的意思就是把s结点的位置放在p结点之后的意思。
这么一来就是p->next结点在s结点之后,p结点在s结点之前,这么说能懂吗?
c语言链表这两个语句s->next=p;s=p;怎么理解
17楼:永生的独行者
先让s指针指向的结点指向p结点
然后再让s指针指向p结点
:-d不懂请追问
p->next=s这一步的意义是什么,这里是如何实现指针p向后移动的,求解释
18楼:brandn琉璃
每个链表结点有data域和指针域,p->next就是指针域,存放下一个结点的地址,指针域等于s,就是把s结点的地址存到了next里面,就是把s连接到了链表上,p=s就实现了p向右移动一位
针式绝缘子中P-10T与P-10M有什么区别
1楼 向天致信 p 10t绝缘子使用在铁横担上,底下的螺丝杆是标准的。p 10m绝缘子使用在木制横担上或有的用在杆顶上,底下的螺丝杆是加长的的。 一般由绝缘件 如瓷件 和金属附件 如钢脚 铁帽 法兰等 用胶合剂胶合或机械卡装而成。绝缘子在电力系统中应用很广,一般属于外绝缘,在大气条件下工作。架空输电...
c语言中与有何区别,c语言中%c与%s的有什么区别?
1楼 匿名用户 在定义变量时 是定义指针 是引用 注 好象c没有引用 例如 int pvar null 定义一个int类型指针int var 0 int pvar var 定义一个引用 并且定义时要指定所引用的对象 在使用时 是解指针 即取其指向的变量的值 是取地址int var 10 int pv...
氩弧焊机WS200A与WS200S有什么区别
1楼 ws 200p 额定输出电流200安的手工钨极氩弧焊,p 代表支持焊条手弧焊。 w 200, 额定输出电流200安的脉冲手工钨极氩弧焊。m 代表支持脉冲电流输出。 w 钨极 氩弧焊 s 手工 。 武汉理工大学的焊接专业 2楼 竹中卧龙 别听那个非焊接专业的胡咧咧,我是理工14级成型 卓越工程师...