일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- object detection
- 정렬알고리즘
- 욕심쟁이 알고리즘
- 모델 훈련
- 컴활1급필기
- 스프링부트
- 방만들기
- HTML공부
- html
- 데이터셋
- 정처기 실기
- 드라이브 마운트
- 조회수 증가
- React
- YOLOv5
- 직접 라벨링
- combobox
- 객체 감지
- springboot
- 이것이 취업을 위한 코딩 테스트다 with 파이썬
- isDisable
- 게시판
- css
- customized yolov5
- 정처기
- 글 검색
- 게시판만들기
- thymeleaf-layout-dialect
- labelImg
- 데이터셋 직접
- Today
- Total
목록코딩테스트 공부/정렬 sorting (2)
기록장
삽입 정렬 : 특정한 데이터를 적절한 위치에 삽입한다는 의미로, 그 앞의 데이터는 이미 정렬되어 있다고 가정한다. 아래와 같은 배열이 있다고 하자. *** 핑크색은 이미 정렬된 데이터 삽입 정렬은 두번째 데이터부터 시작한다. 첫번째 데이터는 이미 정렬되어 있다고 가정하기 때문이다. step1. 두번째 데이터 5가 어떤 위치에 삽입되어야 하는지 판단한다. 7의 앞에 갈지 뒤에 갈지 선택지는 2개이다. 5는 7보다 작기 때문에 7의 왼쪽에 삽입한다. step2. 9가 어떤 위치에 삽입되어야 하는지 판단한다. 선택지는 3개이지만 9는 7보다 크기 때문에 그대로 둔다. step3. 0이 어떤 위치에 삽입되어야 하는지 판단한다. 0은 5보다 작기 때문에 5의 왼쪽에 삽입한다. 위의 과정을 반복하면 정렬이 된 배열..
선택 정렬 : 데이터가 무작위로 여러 개 있을 때 그 중 가장 작은 데이터를 선택하여 맨 앞에 있는 데이터와 바꾸고 이 과정을 반복하는 것 예를 들어 아래 그림과 같은 배열이 있다고 생각해보자. step1. 이 배열에서 가장 작은 데이터는 0 이다. 0을 선택하여 제일 앞에 있는 7과 바꾼다. step2. 핑크색으로 색칠된 데이터는 이미 정렬된 데이터를 의미한다. 그 데이터를 제외하고 다시 가장 작은 데이터를 선택한다 (여기서는 1) 그리고 가장 앞에 있는 데이터 5와 맞바꾼다. 이러한 과정을 반복하면 정렬된 배열을 얻을 수 있다. 이 과정을 코드로 작성해보면 아래와 같다. array = [7,5,9,0,3,2,6,2,4] for i in range(len(array)): min_index = i #가장..