Redian新闻
>
为什么linked list的题目都要先复制一份链表?
avatar
为什么linked list的题目都要先复制一份链表?# Programming - 葵花宝典
s*g
1
家里亲戚准备过来,签证已经过了,我正在准备给她定9月份的机票,问了下代理,大
概1160左右,我问的是iflychina利程旅游这家代理,看了板上那个被骗机票的帖子,
心理有点怕怕的,想问一下,交费的时候他们说给我寄一份信用卡授权书,要我签字,
然后把我的信用卡正面scan给他们寄回去,有这样的吗?我记得以前在网上买东西只要
号码和过期日期就可以了,他们这样是正常的吗?谢谢解惑
avatar
d*s
2
两个月前就把工作辞了,本来已经找好了新工作的,没想到新的公司由于人事变动,不
再招聘新员工,于是我就几所当然的失业了。刚开始还没什么感觉,觉得找工作看简单
,可是没想到两个月过去了,我还是处于迷茫状态。
这两个月,我得积蓄基本上都花光了,租房子吃饭,每天跑出去面试,真的很辛苦。有
时候真的不知道自己为什么选择出国,好多留在国内的同学们,现在都很稳定,基本上
都结婚生子了,可是我还是单身一人,而且没什么存款。所以我想回家了。但是有考虑
到自己当时既然已经选择了这条路,无论多么困难都应该坚持下去,我正在给一家中餐
馆做临时服务员,这样能给我经济上带来一点收入,同时也不至于每天都胡思乱想,可
是到了晚上睡觉的时候,脑袋里还是会浮现出这两个选择,一个让我留下,一个让我回
家。也许回家之后,真的会比现在要好,至少不会靠着做服务员生存,选个差不多的公
司,找个差不多的老婆,结婚生子,平庸的度过一生,或许这才是我的归宿。但是,另
一个让我留下的声音却说,坚持下去,留下来过几年当我掌握了更多的技能在回国,到
那时,好公司随便挑,工资随便提风风光光的回去。这两个声音没日没夜的烦着我,我
真的迷茫了不知该怎么选择,请各位前辈给我指条明路吧!
avatar
a*a
3
弱问
avatar
k*u
4
刚开始看linked list的题目
好像都要复制一份链表,比如head是一个链表,下面的code表示先把head赋值给
current,然后对current做处理,比如去重,最后返回head
current = head
process on current
return head
这么做的目的是什么?为什么不直接process on head?
avatar
h*s
5
查查航空公司官网。我最近查的官网和代理价钱基本一样,差一二百RMB的话当然还是
官网:放心,万一有变动比较容易处理。
avatar
s*9
6
你能私信我你的专业领域吗?
avatar
k*g
7
按照苹果的惯例,答案是不能。
avatar
h*3
8
这怎么是复制一份链表呢?就是复制个head node的reference,一点多的内存都没有用
我建议遇到链表就在head前面加个pre node,可以节省很多边界条件的处理,最后
return pre.next就好了
avatar
g*i
9
代理给我的价钱和官网差不多,直接在官网上定了。
avatar
j*8
10
software engineer, front end engineer.
I live in queens, New York. do you have any referral job?
thank you very much for the help!
avatar
s*t
11
resolution都不能设? 这也太。。。
看了一下, 1.4M/照片。
看来apple是变相鼓励大家买64G的。

【在 k******g 的大作中提到】
: 按照苹果的惯例,答案是不能。
avatar
m*r
12
大牛为什么做码工的题目? 真有用吗?

【在 k*****u 的大作中提到】
: 刚开始看linked list的题目
: 好像都要复制一份链表,比如head是一个链表,下面的code表示先把head赋值给
: current,然后对current做处理,比如去重,最后返回head
: current = head
: process on current
: return head
: 这么做的目的是什么?为什么不直接process on head?

avatar
k*u
13
为什么要搞个 current = head 这一步?
直接对head做处理不行么?比如 head = head.next

【在 h*********3 的大作中提到】
: 这怎么是复制一份链表呢?就是复制个head node的reference,一点多的内存都没有用
: 我建议遇到链表就在head前面加个pre node,可以节省很多边界条件的处理,最后
: return pre.next就好了

avatar
k*u
14
三天不学习,赶不上习主席

【在 m******r 的大作中提到】
: 大牛为什么做码工的题目? 真有用吗?
avatar
r*z
15
单向链表的话,你如何访问已经过去的节点呢?

【在 k*****u 的大作中提到】
: 为什么要搞个 current = head 这一步?
: 直接对head做处理不行么?比如 head = head.next

avatar
s*l
16
没head了 链表找不回来了

【在 k*****u 的大作中提到】
: 为什么要搞个 current = head 这一步?
: 直接对head做处理不行么?比如 head = head.next

avatar
l*n
17
current就是iterator,你直接用head的话,如果是单向的,你怎么再reference这个
list?

【在 k*****u 的大作中提到】
: 为什么要搞个 current = head 这一步?
: 直接对head做处理不行么?比如 head = head.next

avatar
k*u
18
谢谢大家 那么这两个是什么区别?
第一个修改了l1.next,所有的都修改了
test = ListNode(1)
l1 = l2 = test; l1.next = ListNode(3); print l1; print l2; print test;
1 -> 3 -> None
1 -> 3 -> None
1 -> 3 -> None
第二个修改l1,就只有l1变了
test = ListNode(1)
l1 = l2 = test; l1 = ListNode(3); print l1; print l2; print test;
3 -> None
1 -> None
1 -> None
avatar
h*3
19
ListNode(x)是实际内存里面的数据
l1, l2, test都是reference,不是内存里面的数据,理解成reference指向内存的某个
位置
第一个例子,l1,l2,l3都是指向的ListNode(1),然后ListNode(1)后面接了个ListNode(
3)
第二个例子,l1,l2,test开始都是指向ListNode(1),然后你把l1重新指向了ListNode(
3),l2,test没有变
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。