정렬


복수의 원소로 주어진 데이터를 정해진 기준에 따라 새로 늘어놓는 작업

Python의 리스트를 사용하면, 내장된 정렬 기능이 있다. 두 방법이 대표적이다.

  1. 파이썬 내장 함수(built-in function) sorted() - 정렬된 새로운 리스트를 생성
  2. 리스트에 사용할 수 있는 메소드 .sort() - 해당 리스트를 정렬(수정)

정렬 순서를 반대로(내림차순) 하고 싶다면 reverse=True 인자를 추가한다.

L2 = sorted(L, reverse=True)
L.sort(reverse=True)

문자열로 이루어진 리스트의 정렬


L = ['abcd', 'xyz', 'spam']
sorted(L, key=lambda x: len(x))

L = ['spam', 'xyz', 'abcd']
sorted(L, key=lambda x: len(x))

키를 지정하는 또 다른 예

L = [{'name': 'John', 'score': 83},
	 {'name': 'Paul', 'score': 92}]
L.sort(key=lambda x: x['name'])

리스트에 들어있는 사전을 이름의 알파벳 순서대로 정렬한다.

'score'를 기준으로하면 'score'의 값을 기준으로 오름차순 정렬한다.

탐색 알고리즘 - 선형 탐색(Linear Search)/순차 탐색(Sequential Search)