Algorithm/Data structure

Swift - bubble sort

Teol 2023. 11. 3. 17:36

- 버블 정렬


버블 정렬(bubble sort)은 배열의 인접한 두 원소를 비교하면서 정렬하는 알고리즘이다.
시간 복잡도는 O(n^2)이다.

 

func bubbleSort(_ array: [Int]) -> [Int] {
    var sortedArray = array
    let n = sortedArray.count
    for i in 0..<n-1 {
        for j in 0..<n-1-i {
            if sortedArray[j] > sortedArray[j+1] {
                sortedArray.swapAt(j, j+1)
            }
//            print(i, "->", j, j+1, "=>", sortedArray)
        }
    }

    return sortedArray
}


print( bubbleSort([5,3,6,2,1]) ) // -> [1,2,3,5,6]

 

 

'Algorithm > Data structure' 카테고리의 다른 글

Swift - Queue구현  (0) 2023.12.04
Swift - quick sort  (0) 2023.11.04
Swift - selection sort  (1) 2023.11.04