Skip to content

Commit 5a5215b

Browse files
committedJul 7, 2023
Adding : simple
1 parent df0d2d4 commit 5a5215b

File tree

2 files changed

+33
-2
lines changed

2 files changed

+33
-2
lines changed
 

‎algorithm/sort/insertionsort/insertionsort.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,15 @@ import (
66
"golang.org/x/exp/constraints"
77
)
88

9-
// 대개 계산 시간이 정렬할 자료의 수의 제곱에 비례해서 늘어난다. 즉, 1만 개를 1초에 정렬하면
10-
// 10만 개를 정렬하는 데에는 100초 정도가 필요하다.
119
// https://namu.wiki/w/%EC%A0%95%EB%A0%AC%20%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98
1210

1311
// 특징 : k번째원소를 1부터 k-1까지 비교해 적절한 위치에 넣고 그 뒤의 자료를 한칸씩 밀어내는 방식
1412
// 장점 : 평균적으로 O(n^2) 중 빠른 편이다. / 이미 정렬되어있는 자료구조에 자료를 하나씩 삽입/제거하는 경우에는 훌륭한 알고리즘이된다.
1513
// 그 이유는 탐색을 제외한 오버헤드가 적기 때문이다. 그리고 배열이 작을 경우 상당히 효율적이다. 구현이 매우 쉽다.
1614
// 단점 : 경우에 따라서는 뒤로 밀어내는 시간이 크다.
1715
// 시간복잡도 : O(n²)
16+
// 대개 계산 시간이 정렬할 자료의 수의 제곱에 비례해서 늘어난다. 즉, 1만 개를 1초에 정렬하면
17+
// 10만 개를 정렬하는 데에는 100초 정도가 필요하다.
1818

1919
func Insertion[T constraints.Ordered](arr []T) []T {
2020
for currentIndex := 1; currentIndex < len(arr); currentIndex++ {
+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
// 편지
2+
// 문제 설명
3+
// 머쓱이는 할머니께 생신 축하 편지를 쓰려고 합니다. 할머니가 보시기 편하도록 글자 한 자 한 자를 가로 2cm 크기로 적으려고 하며, 편지를 가로로만 적을 때, 축하 문구 message를 적기 위해 필요한 편지지의 최소 가로길이를 return 하도록 solution 함수를 완성해주세요.
4+
5+
// 제한사항
6+
// 공백도 하나의 문자로 취급합니다.
7+
// 1 ≤ message의 길이 ≤ 50
8+
// 편지지의 여백은 생각하지 않습니다.
9+
// message는 영문 알파벳 대소문자, ‘!’, ‘~’ 또는 공백으로만 이루어져 있습니다.
10+
// 입출력 예
11+
// message result
12+
// "happy birthday!" 30
13+
// "I love you~" 22
14+
// 입출력 예 설명
15+
// 입출력 예 #1
16+
17+
// message의 글자 수가 15개로 최소 가로 30cm의 편지지가 필요합니다.
18+
// 입출력 예 #2
19+
20+
// message의 글자 수가 11개로 최소 가로 22cm의 편지지가 필요합니다.
21+
22+
package main
23+
24+
func solution(message string) int {
25+
return 2 * len(message)
26+
}
27+
28+
func main() {
29+
message := "happy birthday!"
30+
solution(message)
31+
}

0 commit comments

Comments
 (0)
Please sign in to comment.