일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- is not allowed to impersonate hive (state=08S01
- 도커 교과서
- mac hive
- 기업 조사 빨리 하는 법
- Failed to connect to localhost:10000
- mac hadoop
- 백준 18428
- 자소서 빨리 쓰는 법
- 이더리움
- mac hadoop 설치
- Safe mode is ON
- 카카오 자물쇠와 열쇠
- 카카오 2020 코테
- hadoop safe mode leave
- hive beeline 에러
- 자소서 빨리
- Resources are low on NN
- Could not open client transport with JDBC Uri: jdbc:hive2://localhost:10000
- hadoop safe mode
- hive beeline 실행
- 카카오 2020 코딩테스트
- hive beeline 설정
- hive beeline
- 자소서 시간 줄이기
- mac hadoop 3
- 자소서 너무 오래 걸림
- 이더리움 #ethereum
- code=0)
- mac hadoop 설정
- mac hive 3
Archives
- Today
- Total
A seeker after truth
단순하게 문제풀기 - 버블정렬, 순차탐색 본문
*본문은 <컴퓨팅 사고력 향상을 위한 문제해결과 알고리즘>(성균관대학교 출판부, 2017)을 참고하여 작성하였습니다.
무식하게 다 해보는 것을 의미함. 일반적으로 알고리즘은 문제 해결을 위한 전략을 제시하는데, 하드웨어 발달로 인해 컴퓨터의 빠른 계산 능력이 지원된다는 것을 감안하면 가능한 경우의 수를 일일이 계산하여 답을 찾는 것도 하나의 전략이다. 이를 완전 탐색(exhaustie search) 혹은 Brute Force라 함.
주어진 문제를 완전 탐색으로 해결하는 과정을 이해하기 위해선 재귀함수 개념을 적용해야 한다. 재귀함수는 주어진 문제를 작은 문제로 쪼개어 해결한 뒤 원래 문제를 해결하는 방식이다.
1. 버블 정렬(bubble sort)
def bubbleSort(dataList):
for checkrange in range(len(dataList)-1,0,-1):
for i in range(checkrange):
if dataList[i] > dataList[i+1]:
dataList[i], dataList[i+1] = dataList[i+1], dataList[i]
print("{}. {}번쨰 위치의 정렬 값은 {}".format(len(dataList)-checkrange, checkrange+1, dataList[checkrange]),dataList)
dataList = [77,42,35,12,101,5]
bubbleSort(dataList)
print(dataList)
2. 순차 탐색
'Algorithm > 이론' 카테고리의 다른 글
알고리즘 분석 방법 (0) | 2019.10.31 |
---|---|
재귀함수를 쓰는 이유(only link) (0) | 2019.10.17 |
그리디 알고리즘 - 최단 경로, 배낭문제 (0) | 2019.10.11 |
[python] 동적 계획법과 분할정복 - 피보나치, 이진 탐색, 빠른 정렬, 병합 정렬 (업뎃중) (0) | 2019.10.10 |
자료 정렬 알고리즘 - 선택, 삽입, 합병 정렬 (0) | 2019.10.10 |