선형 배열(Linear Arrays)이란 데이터들이 선처럼 일렬로 늘어선 형태. Python 에서는 리스트(list)라는 데이터형으로 구현.
.append()
.pop()
.insert()
.del()
.index()
정렬이란? 복수의 원소로 주어진 데이터를 정해진 기준에 따라 새로 늘어놓는 작업.
Python에서는 리스트(list)를 이용한다면, 내장된 정렬 기능 사용 하여 직접 구현할 필요가 없다.
sorted()
.sort()
문자열을 사전에 등장하는 순서에 따라 정렬.
Python 문자열은 대문자가 소문자에 비해서 무조건 우선.
탐색 이란? 복수의 원소로 이루어진 데이터에서 특정 원소를 찾아내는 작업.
선형 탐색 or 순차 탐색
순차적으로 모든 요소들을 탐색하여 원하는 값을 찾는다.
배열의 길이에 비례하는 시간이 걸린다. O(n)
이진 탐색
탐색하려는 배열이 이미 정렬되어 있는 경우에만 적용.
배열의 가운데 원소와 찾으려하는 값을 비교하면, 왼쪽에 있을지 오른쪽에 있을지 알 수 있다.
이 과정을 반복하여 원하는 값을 찾는다.
하나의 함수에서 자신을 다시 호출하여 작업을 수행하는 것
수학시간 때 배우는 점화식과 같다.
알고리즘의 종결조건이 매우 중요하다