Debug.Log

  • 홈
  • 태그
  • 방명록

Python 12

Python으로 알고리즘 공부 02. 퀵 정렬 (Quick Sort)

퀵 정렬 (Quick Sort) 파이썬으로 구현퀵 정렬은 분할 정복 알고리즘의 좋은 예이다.리스트 중 하나를 pivot으로 정하고, pivot보다 작은 아이템은 왼쪽, pivot보다 큰 아이템은 오른쪽으로 보내면서 pivot의 자리를 확정한다.그리고 왼쪽 리스트와 오른쪽 리스트에 대해서 재귀형식으로 진행.평균 시간복잡도는 O(n*log n), 최악의 시간복잡도는 O(n^2) def quick_sorted(arr): if len(arr) > 1: pivot = arr[len(arr)-1] left, mid, right = [], [], [] for i in range(len(arr)-1): if arr[i] pivot: right.append(arr[i]) else: mid.append(arr[i]) mi..

아카이빙 2017.07.03

Python으로 알고리즘 공부 01. 병합정렬 (Merge Sort)

병합정렬 (Merge Sort) 파이썬으로 구현병합정렬은 분할정복 알고리즘의 가장 좋은 예이다.정렬할 리스트를 반으로 나누어 두 부분을 따로 정렬하여 다시 조합하는 과정이다.시간복잡도는 O(n*log n) def merge_sorted(arr): if len(arr)>1: mid = len(arr)//2 left = arr[:mid] right = arr[mid:] ​ l = merge_sorted(left) r = merge_sorted(right) return merge(l, r) else: return arr def merge(left, right): i = 0 j = 0 arr = [] while (i

아카이빙 2017.07.02
이전
1 2
다음
프로필사진

Debug.Log

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

Tag

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

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

  2025. 06  
일 월 화 수 목 금 토
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

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

  • facebook
  • 디지털미디어랩

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.