반응형

전체 글 241

[알고리즘] 파이썬으로 힙 정렬 구현하기 :: heap sort in python

파이썬으로 힙 정렬(heap sort) 구현하기 힙 정렬(Heap sort)이란 최대 힙 트리나 최소 힙 트리를 구성해 정렬을 하는 방법으로서, 내림차순 정렬을 위해서는 최대 힙을 구성하고 오름차순 정렬을 위해서는 최소 힙을 구성하면 된다. 본 포스팅에서는 최소힙으로 오름차순 정렬을 구현해보겠다.내림차순은 아래 코드에서 부등호방향만 반대로 바꾸면 된다. 123456789101112131415161718192021222324252627def heapify(li, idx, n): l = idx * 2; r = idx * 2 + 1 s_idx = idx if (l li[l]): s_idx = l if (r li[r]): s_idx = r if s_idx != idx: li[idx], li[s_idx] = li..

[백준] 2751번 : 수 정렬하기 2 in python 파이썬 :: heap sort

파이썬으로 백준풀기 :: 2751번 수 정렬하기 2 :: 힙 정렬 https://www.acmicpc.net/problem/2751 merge sort로 풀었던 것에 이어 heap sort로 풀어보았다.>> [백준] 2751번 python with merge sort 바로가기 : https://leedakyeong.tistory.com/entry/%EB%B0%B1%EC%A4%80-2751%EB%B2%88-%EC%88%98-%EC%A0%95%EB%A0%AC%ED%95%98%EA%B8%B0-2-in-python-%ED%8C%8C%EC%9D%B4%EC%8D%AC?category=842565 주의할 점은 같은 코드라도 python3으로 제출하면 시간초과가 나기때문에 pypy3으로 제출해야한다. 코드 123456..

[알고리즘] 파이썬으로 병합 정렬 구현하기 :: merge sort in python :: bottom up 방식

파이썬으로 bottom-up 방식 merge sort 구현하기 1. merge sort란? 합병정렬/병합정렬은 반씩 분할해서 다시 합치면서 정렬하는 방식이다. https://ko.wikipedia.org/wiki/합병_정렬#/media/파일:Merge-sort-example-300px.gif 2. merge sort in python 이를 python3에서 구현하면 다음과 같다. 123456789101112131415161718192021# merge sortdef merge(left, right) : v=list() i=0;j=0 while(i merge_sort([0, 5, 7, 6, 1, 2, 8, 3, 4, 9]) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] input으로 들어간 10개..

[알고리즘] 파이썬으로 삽입정렬 구현하기 :: insertion sort in python

파이썬으로 삽입정렬 구현하기 :: insertion sort in python 1. 삽입정렬이란? What is a insertion sort? 삽입 정렬은 모든 요소를 앞에서부터 차례대로 이미 정렬된 배열 부분과 비교하여, 자신의 위치를 찾아 삽입함으로써 정렬을 완성하는 알고리즘이다.https://ko.wikipedia.org/wiki/%EC%82%BD%EC%9E%85_%EC%A0%95%EB%A0%AC 2. insertion sort in python 이를 python3에서 구현하면 다음과 같다. 123456789# insertion sortdef insert(v) : for i in range(1,len(v)) : j=i-1 while(j>=0 and v[i] insert([7, 6, 1, 8, 5,..

[알고리즘] 파이썬으로 거품정렬 구현하기 :: bubble sort in python

파이썬으로 bubble sort 구현하기 1. bubble sort란? 거품 정렬은 두 인접한 원소를 검사하여 정렬하는 방법이다. 시간복잡도는 \(O(n^2)\) 으로 상당히 느리지만 구현이 쉽다는 장점이 있다. 2. bubble sort in python 이를 python3에서 구현하면 다음과 같다. 12345678# bubble sortdef bubble(v) : l = len(v) for i in range(l-1): for j in range(l-i-1) : if v[j]>v[j+1] : v[j+1], v[j] = v[j], v[j+1] return vColored by Color Scriptercs * bubble sort 예시 > bubble([5,4,3,2,1])[1, 2, 3, 4, 5] ..

[알고리즘] 파이썬으로 sort하기 :: bubble sort(버블정렬), insert sort(삽입정렬), merge sort(병합정렬), heap sort(힙정렬)

파이썬으로 정렬하기 1. bubble sort in python 1234567def bubble(v) : l = len(v) for i in range(l-1): for j in range(l-i-1) : if v[j]>v[j+1] : v[j+1], v[j] = v[j], v[j+1] return vColored by Color Scriptercs 2. insertion sort in python 123456789# insertion sortdef insert(v) : for i in range(1,len(v)) : j=i-1 while(j>=0 and v[i]

[시계열 자료 분석] R에서 AirPassengers 데이터 선형계절추세모형 적합시키기

R에서 AirPassengers 데이터 선형계절추세모형(linear and seasonal trend model)에 적합시키는 방법 AirPassengers 데이터는 ts 타입의 데이터로, 1949년부터 1960년까지 매 월 한 포인트의 데이터를 가지고 있다. > AirPassengers Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec1949 112 118 132 129 121 135 148 148 136 119 104 1181950 115 126 141 135 125 149 170 170 158 133 114 1401951 145 150 178 163 172 178 199 199 184 162 146 1661952 171 180 193 181 183 218 230 ..

반응형