Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 5bc6a62

Browse files
committed
add a solution of a issue#2
0 parents commit 5bc6a62

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

‎2/add_two_numbers.rb

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# Definition for singly-linked list.
2+
# class ListNode
3+
# attr_accessor :val, :next
4+
# def initialize(val)
5+
# @val = val
6+
# @next = nil
7+
# end
8+
# end
9+
10+
# @param {ListNode} l1
11+
# @param {ListNode} l2
12+
# @return {ListNode}
13+
def add_two_numbers(l1, l2)
14+
ll_common = ListNode.new(nil)
15+
ll = ll_common
16+
next_is_present = true
17+
while next_is_present
18+
next_is_present = l1&.next || l2&.next
19+
ll_val = l1&.val.to_i + l2&.val.to_i + ll&.val.to_i
20+
int = ll_val/10
21+
22+
ll.val = int > 0 ? ll_val - 10 : ll_val
23+
ll.next = ListNode.new(int) if next_is_present || int > 0
24+
25+
l1 = l1.next if l1
26+
l2 = l2.next if l2
27+
ll = ll.next
28+
end
29+
ll_common
30+
end

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /