Skip to main content

bubble_sort

Function bubble_sort 

Source
pub fn bubble_sort<T: Ord>(arr: &mut [T])
Expand description

Bubble sort — qo’shni elementlarni almashtira-almashtira “pufakchani” yuqoriga chiqarish.

G’oya: massiv bo’ylab yurib, arr[j] > arr[j+1] bo’lsa almashtiramiz. Bitta to’liq yurishdan keyin eng katta element oxirida bo’ladi.

Bu yerda optimallashtirilgan variant: agar bitta yurishda hech narsa almashmasa, massiv allaqachon tartiblangan — to’xtaymiz (shuning uchun eng yaxshi holat O(n)).

  • Time: O(n) / O(n²) / O(n²), Space: O(1), barqaror.

§Misol

use rust_algorithms::sorting::bubble_sort;

let mut v = vec![5, 1, 4, 2, 8];
bubble_sort(&mut v);
assert_eq!(v, [1, 2, 4, 5, 8]);