Advertisement
Alexxik

Untitled

Mar 16th, 2024
224
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Swift 0.93 KB | None | 0 0
  1. // MARK: - Remove Duplicates from Sorted Array
  2.  
  3. func removeDuplicates(_ nums: inout [Int]) -> Int {
  4.     // первый элемент остается на своем месте та как массив отсортирован
  5.     var l = 0
  6.     var r = 1
  7.    
  8.     // когда мы пишем что-то в l, мы его двигаем
  9.     // проверяем тот что на r c предидущим, если они разные, то на место l записваем r, двигаем l и r на +1
  10.     // если одинаковые, то двигаем r на +1
  11.    
  12.     while r < nums.count {
  13.  
  14.         if nums[r] != nums[r-1] {
  15.             nums[l] = nums[r]
  16.             l += 1
  17.         }
  18.         r += 1
  19.     }
  20.     // l остановился на индексе после последнего добавленного элемента - подходит так как индексы идут с 0
  21.     return l
  22. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement