d**********o 发帖数: 11 | 1 第五版
2.5 链表加法,比如输入两个链表3->5->7和6->5->6
(1) 假设低位在前, 输出9->0->4->1
(2) 假设高位在前, 输出1->0->1->3
书上的答案都是要考虑借位,然后一位位对齐加这样的
可是为什么不能把两个链表分别读出来写成整数a和b,然后把a和b直接相加得到的和
再写成链表形式返回? 这不是不用自己在程序里考虑借位了吗?也不容易出错
2.6 找出带有loop的链表的第一个loop节点
这道题为什么不可以把一个个节点地址都存入hashtable, 然后第一个重复出现的地址
不就是第一个节点吗?
书上的解答好长啊 |
q*******z 发帖数: 62 | 2 2.5 会溢出吧
2.6 空间O(n)
【在 d**********o 的大作中提到】 : 第五版 : 2.5 链表加法,比如输入两个链表3->5->7和6->5->6 : (1) 假设低位在前, 输出9->0->4->1 : (2) 假设高位在前, 输出1->0->1->3 : 书上的答案都是要考虑借位,然后一位位对齐加这样的 : 可是为什么不能把两个链表分别读出来写成整数a和b,然后把a和b直接相加得到的和 : 再写成链表形式返回? 这不是不用自己在程序里考虑借位了吗?也不容易出错 : 2.6 找出带有loop的链表的第一个loop节点 : 这道题为什么不可以把一个个节点地址都存入hashtable, 然后第一个重复出现的地址 : 不就是第一个节点吗?
|
f*******t 发帖数: 7549 | 3 1.链表可以很长,无法用普通变量表示
2.hashtable要用额外空间,面试时自然追求最优解法 |
L*******t 发帖数: 782 | 4 第一题:
如果两个链表分别读完再写和就不止一个循环了,可以一个循环同时读两个链表,边读
边写新链表。
【在 d**********o 的大作中提到】 : 第五版 : 2.5 链表加法,比如输入两个链表3->5->7和6->5->6 : (1) 假设低位在前, 输出9->0->4->1 : (2) 假设高位在前, 输出1->0->1->3 : 书上的答案都是要考虑借位,然后一位位对齐加这样的 : 可是为什么不能把两个链表分别读出来写成整数a和b,然后把a和b直接相加得到的和 : 再写成链表形式返回? 这不是不用自己在程序里考虑借位了吗?也不容易出错 : 2.6 找出带有loop的链表的第一个loop节点 : 这道题为什么不可以把一个个节点地址都存入hashtable, 然后第一个重复出现的地址 : 不就是第一个节点吗?
|