【发布时间】:2011-04-16 17:15:55
【问题描述】:
我把这个作为面试问题。我得到了 2 个不等长的链表,每个节点都包含一个数字。我被要求建立一个包含两个链表之和的第三个链表,再次以节点中的 1 位数字的形式。 前任: 链表 1 是 4-7-9-6 链表 2 是 5-7 那么第三个链表将是 4-8-5-3 有人可以建议我一种有效的算法,在空间复杂度方面的妥协最小吗?(我不希望算法数据涉及多次反转列表)。
【问题讨论】:
-
4-7-9-6和5-7之和等于4-8-5-3怎么算?
-
我不知道。我最初考虑这可能是对齐列表的末端并取总和 mod 10 的情况,但结果将是 4-7-4-3。
-
我猜它们只是整数,表示为数字列表,所以它是 4796 + 57 = 4853 ?
-
是的,保罗。这正是我的意思。很抱歉不清楚。
-
我猜测面试问题的正确答案是“列表是单链还是双链?”
标签: c data-structures