add new solutions
This commit is contained in:
parent
e1b702657c
commit
59b71480d4
11 changed files with 343 additions and 0 deletions
36
solutions/0/q21/solution.go
Normal file
36
solutions/0/q21/solution.go
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
package q21
|
||||
|
||||
type ListNode struct {
|
||||
Val int
|
||||
Next *ListNode
|
||||
}
|
||||
|
||||
func mergeTwoLists(list1 *ListNode, list2 *ListNode) *ListNode {
|
||||
root := &ListNode{}
|
||||
cur := root
|
||||
|
||||
for {
|
||||
if list1 == nil && list2 == nil {
|
||||
return root.Next
|
||||
}
|
||||
if list1 == nil {
|
||||
cur.Next = list2
|
||||
return root.Next
|
||||
} else if list2 == nil {
|
||||
cur.Next = list1
|
||||
return root.Next
|
||||
} else if list1.Val < list2.Val {
|
||||
cur.Next = list1
|
||||
cur = cur.Next
|
||||
list1 = list1.Next
|
||||
cur.Next = nil
|
||||
} else {
|
||||
cur.Next = list2
|
||||
cur = cur.Next
|
||||
list2 = list2.Next
|
||||
cur.Next = nil
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var _ = mergeTwoLists
|
||||
Loading…
Add table
Add a link
Reference in a new issue