单链表之和
@陈利人在微博上发布了很多有意思的题目,建议大家关注下。
题目地址在这里。
两个单链表(singly linked list),每一个节点里面一个0-9的数字, 输入就相当于两个大数了。然后返回这两个数的和(一个新list)。这两个输入的list 长度相等。 要求是:1. 不用递归。2. 要求算法在最好的情况下,只遍历两个list一次, 最差的情况下两遍。
解答:
第一遍遍历两个链表相加并且存储,第二遍遍历处理节点data >= 10的情况。
如果节点值>10,需要向前进位,需要两个指针,第一个不断迭代链表称为迭代指针,第二个记录需要进位到的节点称为位置指针,此时考虑两种情况:
前一个节点值<9,则前一个节点值+1即可
前一个节点...
codeforces Contest 233Div.2
submissions for codeforce contest 233Div.2#A.Pages B.Red and Blue Balls C.Cards
238 post articles, 30 pages.