Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // MARK: - Remove Duplicates from Sorted Array
- func removeDuplicates(_ nums: inout [Int]) -> Int {
- // первый элемент остается на своем месте та как массив отсортирован
- var l = 0
- var r = 1
- // когда мы пишем что-то в l, мы его двигаем
- // проверяем тот что на r c предидущим, если они разные, то на место l записваем r, двигаем l и r на +1
- // если одинаковые, то двигаем r на +1
- while r < nums.count {
- if nums[r] != nums[r-1] {
- nums[l] = nums[r]
- l += 1
- }
- r += 1
- }
- // l остановился на индексе после последнего добавленного элемента - подходит так как индексы идут с 0
- return l
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement