티스토리 뷰

삽입정렬은 현재원소를 앞의 원소들과 비교해가며, 적절한 위치에 삽입하는 정렬기법입니다.

for문과 while 문을 중첩하기에 O(N^2)의 시간복잡도를 가집니다.


C++ 소스 코드

#include <cstdio>
using namespace std;
int main(){
    int nums[] = {3,6,1,2,9,7,4,5,10,8};
    for(int i=0;i<9;i++){
        int j=i;
        while(j>=0 && nums[j]>nums[j+1]){
            int temp = nums[j];
            nums[j] = nums[j+1];
            nums[j+1] = temp;
            j--;
        }
    }
    for(int i=0;i<10;i++){
        printf("%d ", nums[i]);
    }
    return 0;
}

Swift 소스 코드

import Foundation

var nums = [3,6,1,2,9,7,4,5,10,8]
for i in 0..<9 {
    var j = i
    while j >= 0 && nums[j] > nums[j+1] {
        let temp = nums[j]
        nums[j] = nums[j+1]
        nums[j+1] = temp
        j-=1
    }
}
for num in nums {
    print(num)
}
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/12   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함