File tree 3 files changed +62
-0
lines changed
3 files changed +62
-0
lines changed Original file line number Diff line number Diff line change
1
+ # @param {Integer[]} nums
2
+ # @param {Integer} target
3
+ # @return {Integer[]}
4
+ def two_sum ( nums , target )
5
+ nums . each_with_index do |x , idx |
6
+ if nums . include? target - x
7
+ return [ idx , nums . index ( target - x ) ] if nums . index ( target - x ) != idx
8
+ end
9
+ next
10
+ end
11
+ end
Original file line number Diff line number Diff line change
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
+ return l2 if l1 == nil
15
+ return l1 if l2 == nil
16
+ cur_val = l1 . val + l2 . val
17
+ l3 = ListNode . new ( cur_val % 10 )
18
+ add = cur_val >= 10 ? 1 : 0
19
+ tmp = l3
20
+
21
+ l1 = l1 . next
22
+ 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
35
+ tmp . next = ListNode . new ( cur_val % 10 )
36
+ tmp = tmp . next
37
+ add = cur_val >= 10 ? 1 : 0
38
+ l1 = l1 . next
39
+ end
40
+
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
47
+ end
48
+
49
+ tmp . next = ListNode . new ( 1 ) if add == 1
50
+ l3
51
+ end
You can’t perform that action at this time.
0 commit comments