Skip to main content

remove_duplicates

Function remove_duplicates 

Source
pub fn remove_duplicates<T: PartialEq + Copy>(nums: &mut [T]) -> usize
Expand description

Tartiblangan massivdan takrorlarni joyida olib tashlaydi.

Qaytadi: yangi (noyob) elementlar soni. Massivning shu qadar boshlang’ich qismi to’g’ri qiymatlarni saqlaydi.

G’oya: yozish ko’rsatkichi noyob qiymatlar uchun, oqish — skanerlash uchun.

  • Time: O(n), Space: O(1).

§Misol

use rust_algorithms::other::two_pointers::remove_duplicates;

let mut v = vec![1, 1, 2, 2, 2, 3, 4, 4];
let n = remove_duplicates(&mut v);
assert_eq!(n, 4);
assert_eq!(&v[..n], &[1, 2, 3, 4]);