File tree 2 files changed +16
-18
lines changed
2 files changed +16
-18
lines changed Original file line number Diff line number Diff line change 7
7
8
8
class RemoveDuplicatesFromSortedArray {
9
9
func removeDuplicates( inout nums: [ Int ] ) -> Int {
10
- if nums. count <= 1 {
11
- return nums . count
10
+ guard nums. count > 0 else {
11
+ return 0
12
12
}
13
-
14
- var lastIndex = 0
15
13
16
- for num in nums {
17
- if num != nums [ lastIndex ] {
18
- lastIndex += 1
19
- nums [ lastIndex ] = num
20
- }
14
+ var index = 0
15
+
16
+ for num in nums where num != nums [ index ] {
17
+ index += 1
18
+ nums [ index ] = num
21
19
}
22
20
23
- return lastIndex + 1
21
+ return index + 1
24
22
}
25
23
}
Original file line number Diff line number Diff line change 8
8
9
9
class RemoveDuplicatesFromSortedArrayII {
10
10
func removeDuplicates( inout nums: [ Int ] ) -> Int {
11
- // edge case
12
- if nums. count <= 2 {
11
+ guard nums. count > 2 else {
13
12
return nums. count
14
13
}
15
14
16
- var lastIndex = 1
15
+ var index = 1
16
+
17
17
for i in 2 ..< nums. count {
18
- if nums [ lastIndex ] != nums [ i ] || nums [ lastIndex ] != nums [ lastIndex - 1 ] {
19
- lastIndex += 1
20
- nums [ lastIndex ] = nums [ i]
21
- }
18
+ if nums [ index ] != nums [ index - 1 ] || nums [ index ] != nums [ i ] {
19
+ index += 1
20
+ nums [ index ] = nums [ i]
21
+ }
22
22
}
23
23
24
- return lastIndex + 1
24
+ return index + 1
25
25
}
26
26
}
You can’t perform that action at this time.
0 commit comments