Debug.Log

  • 홈
  • 태그
  • 방명록

Quick Selection 1

Python으로 알고리즘 공부 05. 퀵 셀렉션 (Quick Selection)

퀵 셀렉션 (Quick Selection) 파이썬으로 구현퀵 셀렉션은 리스트를 정렬하지 않고 K번째로 큰 수를 알고 싶을 때 쓰는 방법이다.전체적인 솔루션은 퀵 정렬과 매우 유사하다, 피벗을 하나 골라서 값을 비교하면서, 피벗보다 작은 리스트, 피벗 보다 큰 리스트로 나눈다.k번째 숫자가 속해있는 리스트만 가지고 다시 재귀적으로 반복한다.median 값을 찾을 때도 활용 가능.평균 시간복잡도는 O(n) def quick_selection(arr, kth): pivot = arr[(len(arr)+1)//2 - 1] left, mid, right = [], [], [] for i in range(len(arr)): if arr[i] pivot: right.append(arr[i]) else: mid.app..

아카이빙 2017.07.05
이전
1
다음
더보기
프로필사진

Debug.Log

  • 분류 전체보기 (102)
    • 아카이빙 (101)
      • BOJ (30)
      • Unity3D (8)
      • C, C++ (11)
      • C# (32)
      • Clean Code (1)

Tag

데이터마이닝, node.js, BFS, 알고리즘, C, sizeof, C++, Regex, 인터페이스, Python, dp, 정규표현식, 유니티, unity3D, 동적 프로그래밍, Android, 스타크래프트, C#, 안드로이드, dynamic programming,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2025/08   »
일 월 화 수 목 금 토
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

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

  • facebook
  • 디지털미디어랩

티스토리툴바