Algorithm 23

[이.코.테] 정렬

정렬이란? 데이터를 특정한 기준에 따라서 순서대로 나열하는 것 선택 정렬 매번 가장 작은 것을 선택하여 맨 앞과 교체하는 방법 시간 복잡도: O(N^2) for i in range(len(array)): min_index = i for j in range(i+1, len(array)): if array[min_index] > array[j]: min_index = j array[i], array[min_index] = array[min_index], array[i] 삽입 정렬 데이터를 하나씩 확인하며, 각 데이터를 적절한 위치에 삽입하는 방법 시간 복잡도: O(N^2), 데이터가 정렬되어 있는 경우 O(N) for i in range(1, len(array)): for j in range(i, 0, -1..

[이.코.테] DFS와 BFS

탐색이란? 많은 양의 데이터 중에서 원하는 데이터를 찾는 과정 자료구조란? 데이터를 표현하고 관리하고 처리하기 위한 구조 스택 (Stack) 선입후출 (First In Last Out) / 후입선출 (Last In First Out) 파이썬에서는 list 자료형을 스택으로 사용할 수 있다. stack = [] stack.append(5) stack.pop() 큐 (Queue) 선입선출 (First In First Out) 파이썬에서는 deque을 사용해 큐를 구현하는 것이 가장 빠른 방법이다. from collections import deque queue = deque() queue.append(5) queue.popleft() 재귀 함수란? 자기 자신을 다시 호출하는 함수 파이썬 인터프리터는 호출 횟..

[이.코.테] 주요 라이브러리

내장 함수 sum result = sum([1,2,3,4,5])# 15 min result = min(7,3,5,2)# 2 max result = max(7,3,5,2)# 7 eval result = eval("(3+5) * 7")# 56 sorted result = sorted([9,1,8,5,4])# [1,4,5,8,9] result = sorted([9,1,8,5,4], reverse=True)# [9,8,5,4,1] result = sorted([('홍길동', 35), ('이순신', 75), ('아무개', 50)], key=lambda x: x[1], reverse=True)# [('이순신', 75), ('아무개', 50), ('홍길동', 35)] sort - 내부 값이 바로 변경됨 data = ..