don't stop believing

Insertion Sort - 삽입 정렬 본문

Golang/Basic

Insertion Sort - 삽입 정렬

Tongchun 2019. 5. 8. 18:43

삽입 정렬입니다.
버블정렬과 비슷한데 배열의 1 번 자리에서부터 시작해 뒤로가면서 큰 값을 위치시킵니다.

https://en.wikipedia.org/wiki/Insertion_sort

 

Insertion sort - Wikipedia

Insertion sort is a simple sorting algorithm that builds the final sorted array (or list) one item at a time. It is much less efficient on large lists than more advanced algorithms such as quicksort, heapsort, or merge sort. However, insertion sort provide

en.wikipedia.org

어느정도 정렬이 되어있을 경우 효율이 좋은 방법입니다.

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
32
package main
import "fmt"
func main() {
arr := [10]int{9, 1, 2, 8, 6, 7, 5, 3, 0, 4}
fmt.Println("Initial array is:", arr)
fmt.Println("")
if len(arr) <= 1 {
fmt.Println("Sorted array is: ", arr)
return
}
var i, j int
// 1 Loop .
for i = 1; i < len(arr); i++ {
// 0 i Loop .
for j = 0; j < i; j++ {
// i i .
// .
if arr[j] > arr[i] {
arr[i], arr[j] = arr[j], arr[i]
}
}
}
fmt.Println("Sorted array is: ", arr)
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

 

'Golang > Basic' 카테고리의 다른 글

Counting Sort - 계수 정렬  (0) 2019.05.09
Shell Sort - 쉘 정렬  (0) 2019.05.09
Heap Sort - 힙 정렬  (0) 2019.05.07
Odd-Even Sort - 홀짝 정렬  (0) 2019.05.01
Comb Sort - 빗질 정렬  (0) 2019.04.29
Comments