알고리즘

    [알고리즘] Stable & In-place

    [알고리즘] Stable & In-place

    Stable 알고리즘 정렬할 자료들 중 동일한 두 자료의 상대적인 위치가 **정렬 후에도 유지**되는 알고리즘 정렬을 했을 때 중복된 값들의 순서가 변하지 않으면 **안정(Stable) 정렬**, 변하면 **불안정(Unstable) 정렬** Stable 알고리즘 Insertion Sort Merge Sort Bubble Sort Counting Sort Unstable 알고리즘: Selection sort Heap Sort Shell Sort Quick Sort In-place 알고리즘 **입력을 저장하는 메모리 공간** 이외에 추가로 사용하는 메모리공간이 O(1)인 알고리즘 추가적인 메모리가 거의 들지 않는 알고리즘 In-place 알고리즘 Insertion Sort Selection Sort Bubb..

    [python](알고리즘) quickSort 퀵정렬(랜덤 피봇) 구현

    [python](알고리즘) quickSort 퀵정렬(랜덤 피봇) 구현

    quickSort 구현 랜덤 피봇 방법(random pivot) import random def swap(array, i, j): #array[i] 값과 array[j] 값 swap 함수 tmp = array[i] array[i] = array[j] array[j] = tmp def quick_sort(array, start, end): #랜덤피봇의 퀵정렬 if start >= end: #원소가 1개인 경우 return else: p = partition(array, start, end) #기준 피봇 결정 quick_sort(array, start, p-1) #피봇기준 왼쪽 부분 재귀호출 quick_sort(array, p+1, end) #피봇기준 오른쪽 부분 재귀호출 return array def pa..

    [python](알고리즘) mergeSort 병합정렬(합병정렬) 구현

    [python](알고리즘) mergeSort 병합정렬(합병정렬) 구현

    Merge sort(합병정렬) 구현 코드 def merge_sort(list): if len(list)

    알고리즘에 대하여 (pseudo-code)

    알고리즘에 대하여 (pseudo-code)

    알고리즘 문제 해결 과정을 체계적으로 기술한 것 문제의 요구 조건 입력과 출력으로 명시할 수 있다. 유래 알 콰리즈미(al-Khwarizmi) ; 페르시아 과학자, 근대 수학의 아버지 ↓ Algoritmi : 알 콰리즈미를 라틴화한 단어 ↓ Algoritm Pseudo-language (의사코드) 알고리즘 기술을 위한 표준 언어 pseudo-code : pseudo-language 로 작성한 코드 프로그래밍 언어보다 융통성이 있음 모호함이 적고, 명령어를 정의하면 됨 엄격한 문법에 따르지 않아도 무방 if 문 if 조건 then else while 문 while 조건 for 문 for i = 1 to n for i = n downto 1 1 ~ n 까지 반복 알고리즘의 평가 기준 정확성 수행시간 사용 메..