SW 사관학교 정글(Jungle) 43

[알고리즘] 병합 정렬 (merge sort)

병합(머지) 정렬배열을 앞부분과 뒷부분의 두 그룹으로 나누어 각각 정렬한 후 병합하는 작업을 반복하는 알고리즘이다.분할(리스트의 크기가 1이 될 때까지)과 정복(리스트를 정렬된 상태로 병합)쪼갤 때는 한 개까지!병합 할 때에는 정렬이 된 두 개의 배열을 계속해서 병합!stable 안정적이다.대규모 데이터를 정렬할 때, 안정적인 성능이 요구되는 상황에서 많이 사용된다.시간복잡도O(n logn) = 배열 병합의 시간 복잡도 O(n) x 데이터 원소 수가 n일 때 병합 정렬의 단계는 log n만큼 필요 O(log n) = O(n) x O(log n)두 개(a,b)의 배열을 한 개(c)의 배열로 병합 해보기!a=[2,4,6,8,11,13]b=[1,2,3,4,9,16,21]c=[None]*(len(a)+len(b..

[알고리즘] 버블 정렬 (bubble sort)

버블 정렬이란? What is bubble sort?이웃한 두 원소의 대소 관계를 비교하여 필요에 따라 교환을 반복하는 알고리즘으로, 단순 교환 정렬이라고도 한다.안정적인 정렬(Stable Sort)이다.그림 1번) 1회전 : 5개의 정렬 아이템들이 있으면 4번만 교환하면 정렬이 완료된다. (n-1번)그림 2번) 2회전 : 3번만 교환하면 정렬이 완료된다 (n-2번)총 n-1번 회전을 돌고 회전이 늘어날 때마다 교환시도 횟수는 1번씩 줄어든다a=[7,4,5,1,3] n = len(a) for i in range(n-1): for j in range(n-1-i): if a[j] > a[j+1]: a[j+1],a[j] = a[j],a[j+1] print(a)패스(pass)정렬하며 ..

[SW사관학교 정글 9기] 정글 에세이_Week01, 돌아보는 시간

그는 "밥똥개"가 되었다.SW사관학교 정글에 합격소식을 받고, 친구들에게 주 100시간 이상 밥먹고 코딩만하러 카이스트에 간다고 카카오톡 단톡방에 자랑한 적이 있었다. 그 이야기를 듣고 친구중 한명이 나에게 "밥똥개"라는 별명을 지어주었다. ㅋㅋㅋㅋ처음에 밥똥개라길래 "바보똥개"를 줄여서 말하는건가 했는데 "밥 먹고, 똥 싸고 개발만 하는 사람"을 줄여서 밥똥개라 부르기 시작했다. 어찌 됬든 SW사관학교를 시작하며 그 말은 실화가 되며 Real 밥똥개가 되어버렸다. SW사관학교 카이스트 정글 마지막 기수! Week01주차, 입소 6일차(SW사관학교의 일주일은 목요일이 시작이다.)[Week00주차]사실 나는 코로나 때문에 바로 현장 참여를 하지 못했었다. 0주차에는 web 만드는 팀 프로젝트를 진행했었는데..