由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 一道Linked List题
相关主题
[合集] C++ Q76: singly linked list -- 这个逆序打印有什么错?thread-safe blockingqueue
面试题总结(6) - Linked Listleetcode 上 wordladderII 求教
Google及其它面经 (长,慎入)发面经 回报本版
我恨iPhone@Facebook电面G电面面经
分享下G家第一个phone interview的题目Binary Tree Level Order Traversal为什么老通不过
DFS比BFS好在哪?amazon面经,已挂。
service now 卧佛和面筋leetcode做伤心了
Dropbox电话面经Clone graph
相关话题的讨论汇总
话题: linked话题: list话题: i2话题: i1话题: add
进入JobHunting版参与讨论
1 (共1页)
R**y
发帖数: 72
1
You have two numbers represented by a linked list where each node contains a
single digit. The digits are stored in reverse order. Write a function to
add two numbers and return another linked list.
题目来自Career up 150. 另有一个followup, linked list 储存数字为正常顺序,同
样求和。
书上给的解法是直接进行数位的加减,然后将新的数字输入到linkedlist.
这一题,我直接的想法是利用stack和queue 将数字取出来重新包装成int,完成加法后
,再输入回linkedlist。
希望有大牛帮忙比较一下两种思路的优劣。
l*******b
发帖数: 2586
2
linked list 本来就是要处理整数不够会溢出的情况吧。。。转换成整数还有什么意思
b***m
发帖数: 5987
3
正确。楼主那么做题会被直接fail掉。

【在 l*******b 的大作中提到】
: linked list 本来就是要处理整数不够会溢出的情况吧。。。转换成整数还有什么意思
R**y
发帖数: 72
4
感谢回复。
那这道题的目的在于用linked list表示非常大的数,然后进行linked list 形式的加
法运算
例如 a = 1-> 2 ..(n 个)... 2 ->2 计算a+a。 这样的情况如果我提取出来,整数是
肯定会溢出的。
但是用linked list 却还是可以进行运算。
不知道我的理解对不对。

【在 l*******b 的大作中提到】
: linked list 本来就是要处理整数不够会溢出的情况吧。。。转换成整数还有什么意思
R**y
发帖数: 72
5
bjhmm大牛。。。感谢你的回复。
我刚刚做题不久,揣摩不到题目的意思。我原本以为,以为这是考察queue 和 stack的
使用。。。。
没想到整数溢出这回事

【在 b***m 的大作中提到】
: 正确。楼主那么做题会被直接fail掉。
b***m
发帖数: 5987
6

这题其实根本不需要用queue和stack,inplace死做就行了。

【在 R**y 的大作中提到】
: bjhmm大牛。。。感谢你的回复。
: 我刚刚做题不久,揣摩不到题目的意思。我原本以为,以为这是考察queue 和 stack的
: 使用。。。。
: 没想到整数溢出这回事

F********9
发帖数: 44
7
如果是逆序,就直接加,存到新link list里。
如果是正序,可以先将两个链表逆序,然后加, 然后再逆序。
R**y
发帖数: 72
8
赞同,死做是个好选项

【在 b***m 的大作中提到】
:
: 这题其实根本不需要用queue和stack,inplace死做就行了。

t****a
发帖数: 1212
9
这几天正在琢磨clojure的尾递归优化,就顺手写了一个
(defn linked-list-add [v1 v2]
(letfn [(add-sub [i1 i2 d current]
(if (and (zero? i1) (zero? i2))
current
(let [a1 (get v1 (dec i1))
a2 (get v2 (dec i2))
s (+ a1 a2 d)
b (if (<= s 9)
s
(- s 10))
c (if (<= s 9)
0
1)]
(recur (dec i1) (dec i2) c (cons b current)))))]
(vec (add-sub (count v1) (count v2) 0 []))))

(linked-list-add [3 6 8] [5 3 3]) ; [9 0 1]
j*****I
发帖数: 2626
10
请问楼主这个150是不是对付算法题目比较全的一本书了?

a

【在 R**y 的大作中提到】
: You have two numbers represented by a linked list where each node contains a
: single digit. The digits are stored in reverse order. Write a function to
: add two numbers and return another linked list.
: 题目来自Career up 150. 另有一个followup, linked list 储存数字为正常顺序,同
: 样求和。
: 书上给的解法是直接进行数位的加减,然后将新的数字输入到linkedlist.
: 这一题,我直接的想法是利用stack和queue 将数字取出来重新包装成int,完成加法后
: ,再输入回linkedlist。
: 希望有大牛帮忙比较一下两种思路的优劣。

1 (共1页)
进入JobHunting版参与讨论
相关主题
Clone graph分享下G家第一个phone interview的题目
G家onsite记录,难度呵呵DFS比BFS好在哪?
不明白leetcode OJ wordladder 2 总是 Time Limit Exceededservice now 卧佛和面筋
实现一个 thread-safe blocking queue这题怎么写啊?L家的常考Dropbox电话面经
[合集] C++ Q76: singly linked list -- 这个逆序打印有什么错?thread-safe blockingqueue
面试题总结(6) - Linked Listleetcode 上 wordladderII 求教
Google及其它面经 (长,慎入)发面经 回报本版
我恨iPhone@Facebook电面G电面面经
相关话题的讨论汇总
话题: linked话题: list话题: i2话题: i1话题: add