정렬

정렬(Sorting)각 데이터를 특정 항목으로 오름차순 혹은 내림차순으로 재배열하는 작업내부정렬데이터량이 적을 때 주기억장치에서 정렬하는 방법삽입법: 삽입 정렬, 쉘 정렬교환법: 버블 정렬, 선택 정렬, 퀵 정렬선택법: 힙정렬병합법: 머지정렬(합병정렬)분배법: 기수정렬외부정렬대용량의 데이터를 보조기억장치에서 기억시켜서 정렬하는 방법밸런스 병합 정렬, 캐스케이드 병합 정렬, 폴리파즈 병합 정렬, 오실레이팅 병합 정렬우리는 내부정렬만 공부한다. 왜? 프로그램의 성능을 결정하는 것은 내부정렬이 결정. 즉, 주기억장치가 성능 결정버블 정렬(Bubble Sort)두 개의 데이터를 비교하여 크기에 따라 위치를 서로 교환하는 정렬 방식평균과 최악 모두 시간복잡도는 O(n^2)선택 정렬(Selection Sort)N개..
특징딕셔너리에 저장되는 요소는 정렬되지 않는다.딕셔너리는 만 번 정도는 같은 순서로 열거되다가 이후부터 순서가 갑자기 바뀔 수 있다.딕셔너리는 정렬되지 않은 컬렉션하나의 타입만 저장할 수 있다. 키의 타입이 모두 같고 값의 타입이 모두 같아야 함. 하지만 키와 값의 타입은 서로 달라도 된다.딕셔너리 결과는 항상 옵셔널이기 때문에 옵셔널 처리에 주의해야 한다.선언let dict1: Dictionarylet dict2:[String:Int] 저장된 요소 개수 확인(.count)let words=["A":"Apple","B":"Banana","C":"City"]print(words.count)//3 비어있는지 확인(.isEmpty)let words=["A":"Apple","B":"Banana","C":"Cit..
배열의 길이let nums = [1,2,3]print(nums.count)//3//비어있는지 확인print(nums.isEmpty)//false배열 요소 접근//subscript 문법 사용let fruits = ["Apple", "Banana","Melon"]print(fruits[0]) //배열 비어있을 때 인덱스로 접근하면 에러 발생//Apple// 범위let fruits = ["Apple", "Banana","Melon"]print(fruits[0...1])//["Apple", "Banana"]let fruits = ["Apple", "Banana","Melon"]//정수 인덱스 대신 속성으로 제공하는 인덱스 사용하면 더 안전한 코드print(fruits[fruits.startIndex])//Ap..
SON!
'정렬' 태그의 글 목록