2
2
// #Data_Structure_II_Day_10_Linked_List #Programming_Skills_II_Day_15
3
3
// #2023_03_10_Time_106_ms_(79.11%)_Space_48.6_MB_(31.94%)
4
4
5
- class ListNode {
6
- public val : number | null ;
7
- public next : ListNode | null ;
8
-
9
- constructor ( val ?: number | null , next ?: ListNode | null ) {
10
- this . val = val === undefined ? 0 : val ;
11
- this . next = next === undefined ? null : next ;
12
- }
13
- }
5
+ import { ListNode } from '../../com_github_leetcode/listnode'
14
6
15
7
/*
16
8
* Definition for singly-linked list.
@@ -24,29 +16,29 @@ class ListNode {
24
16
* }
25
17
*/
26
18
function addTwoNumbers ( l1 : ListNode | null , l2 : ListNode | null ) : ListNode | null {
27
- const result = new ListNode ( null ) ;
28
- let next = result ;
29
- let carryNum = 0 ;
30
- let currSum = 0 ;
31
- let num1 = 0 ;
32
- let num2 = 0 ;
19
+ const result = new ListNode ( null )
20
+ let next = result
21
+ let carryNum = 0
22
+ let currSum = 0
23
+ let num1 = 0
24
+ let num2 = 0
33
25
34
- while ( l1 !== null || l2 !== null ) {
35
- // @ts -ignore
36
- num1 = l1 !== null ? l1 . val : 0 ;
37
- // @ts -ignore
38
- num2 = l2 !== null ? l2 . val : 0 ;
39
- currSum = ( num1 + num2 + carryNum ) % 10 ;
40
- carryNum = Math . floor ( ( num1 + num2 + carryNum ) / 10 ) ;
41
- next . next = new ListNode ( currSum ) ;
42
- next = next . next ;
43
- l1 = l1 !== null ? l1 . next : null ;
44
- l2 = l2 !== null ? l2 . next : null ;
45
- }
46
- if ( carryNum ) {
47
- next . next = new ListNode ( carryNum ) ;
48
- }
49
- return result . next ;
26
+ while ( l1 !== null || l2 !== null ) {
27
+ // @ts -ignore
28
+ num1 = l1 !== null ? l1 . val : 0
29
+ // @ts -ignore
30
+ num2 = l2 !== null ? l2 . val : 0
31
+ currSum = ( num1 + num2 + carryNum ) % 10
32
+ carryNum = Math . floor ( ( num1 + num2 + carryNum ) / 10 )
33
+ next . next = new ListNode ( currSum )
34
+ next = next . next
35
+ l1 = l1 !== null ? l1 . next : null
36
+ l2 = l2 !== null ? l2 . next : null
37
+ }
38
+ if ( carryNum ) {
39
+ next . next = new ListNode ( carryNum )
40
+ }
41
+ return result . next
50
42
}
51
43
52
- export { ListNode , addTwoNumbers } ;
44
+ export { ListNode , addTwoNumbers }
0 commit comments