File tree 3 files changed +8
-21
lines changed
3 files changed +8
-21
lines changed Original file line number Diff line number Diff line change
1
+ .idea /** /*
Original file line number Diff line number Diff line change 10
10
# @param {ListNode} l1
11
11
# @param {ListNode} l2
12
12
# @return {ListNode}
13
+
13
14
def add_two_numbers ( l1 , l2 )
14
15
return l2 if l1 == nil
15
16
return l1 if l2 == nil
@@ -20,32 +21,17 @@ def add_two_numbers(l1, l2)
20
21
21
22
l1 = l1 . next
22
23
l2 = l2 . next
23
- while !l1 . nil? && !l2 . nil?
24
- cur_val = l1 . val + l2 . val + add
25
- tmp . next = ListNode . new ( cur_val % 10 )
26
- tmp = tmp . next
27
- add = cur_val >= 10 ? 1 : 0
28
-
29
- l1 = l1 . next
30
- l2 = l2 . next
31
- end
32
-
33
- until l1 . nil?
34
- cur_val = l1 . val + add
24
+ while !l1 . nil? || !l2 . nil? || add > 0
25
+ cur_val = add
26
+ cur_val += l1 . nil? ? 0 : l1 . val
27
+ cur_val += l2 . nil? ? 0 : l2 . val
35
28
tmp . next = ListNode . new ( cur_val % 10 )
36
29
tmp = tmp . next
37
30
add = cur_val >= 10 ? 1 : 0
38
- l1 = l1 . next
39
- end
40
31
41
- until l2 . nil?
42
- cur_val = l2 . val + add
43
- tmp . next = ListNode . new ( cur_val % 10 )
44
- tmp = tmp . next
45
- add = l2 . val + add >= 10 ? 1 : 0
46
- l2 = l2 . next
32
+ l1 = l1 . nil? ? l1 : l1 . next
33
+ l2 = l2 . nil? ? l2 : l2 . next
47
34
end
48
35
49
- tmp . next = ListNode . new ( 1 ) if add == 1
50
36
l3
51
37
end
You can’t perform that action at this time.
0 commit comments