일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 성분
- 프로그래밍언어
- 주식
- 프로그래머스 알고리즘 공부
- 알고리즘트레이닝
- 서평
- 독후감
- C
- 화장품
- algorithmStudy
- C++
- 자바
- 알고리즘공부
- 자바스크립트
- 경제
- 책알남
- 책을알려주는남자
- 알고리즘 공부
- algorithmTest
- algorithmtraining
- 돈
- 백준알고리즘
- 재테크
- JavaScript
- 지혜를가진흑곰
- 투자
- 다독
- 채권
- Java
- 독서
- Today
- Total
목록[Snow-ball]프로그래밍(컴퓨터) (331)
탁월함은 어떻게 나오는가?
문제 N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하ㅣ오. 입력 첫째 줄에 수의 개수 N(1
문제 N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N(1
문제 N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N(1
문제 666은 종말을 나타내는 숫자라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타워즈를 만들 때, 스타워즈 1, 스타워즈 2, 스타워즈 3, 스타워즈 4, 스타워즈 5, 스타워즈 6과 같이 이름을 지었고, 피터 잭슨은 반지의 제왕을 만들 때, 반지의 제왕 1, 반지의 제왕 2, 반지의 제왕 3과 같이 영화 제목을 지었다. 하지만 숌은 자신이 조지 루카스와 피터 잭슨을 뛰어넘는다는 것을 보여주기 위해서 영화 제목을 좀 다르게 만들기로 했다. 종말의 숫자란 어떤 수에 6이 적어도 3개이상 연속으로 들어가는 수를 말한다. 제일 작은 종말의 숫자는 666이고, 그 다음으로 큰 수는 1666, 2..
[문제] 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg 이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A와 B의 덩치가 각각 (x, y), (p, q)라고 할 때 x > p 그리고 y > q 이라면 우리는 A의 덩치가 B의 덩치보다 "더 크다"고 말한다. 예를 들어 어떤 A, B 두 사람의 덩치가 각각 (56, 177), (45, 165)라고 한다면 A의 덩치가 B보다 큰 셈이 된다. 그런데 서로 다른 덩치끼리 크기를 정할 수 없는 경우도 있다. 예를 들어 두 사람 C와 D의 덩치가 각각 (45, 181), (55, 173)이라면 몸무게는 D가 C보다 더 무겁고, 키는 C가 더 크므로, "덩치"로만 ..
퀵 정렬(Quick Sort) 알고리즘 개념 - 퀵 정렬은 찰스 앤터니 리처드 호어가 개발한 정렬 알고리즘이다. - 퀵 정렬은 분할 정복(divide and conquer) 방법을 통해 리스트를 정렬한다. - 다른 원소와의 비교만으로 정렬을 수행하는 비교 정렬에 속한다. - 퀵 정렬은 n개의 데이터를 정렬할 때, 최악의 경우에는 O(n^2)번의 비교를 수행하고, 평균적으로 O(n log n)번의 비교를 수행한다. - 퀵 정렬의 내부 루프는 대부분의 컴퓨터 아키텍처에서 효율적으로 작동하도록 설계되어 있고(그 이유는 메모리 참조가 지역화되어 있기 때문에 CPU 캐시의 히트율이 높아지기 때문이다), 대부분의 실질적인 데이터를 정렬할 때 제곱 시간이 걸릴 확률이 거의 없도록 알고리즘을 설계하는 것이 가능하다. ..
퀵 정렬(Quick Sort) 알고리즘 개념 - 퀵 정렬은 찰스 앤터니 리처드 호어가 개발한 정렬 알고리즘이다. - 퀵 정렬은 분할 정복(divide and conquer) 방법을 통해 리스트를 정렬한다. - 다른 원소와의 비교만으로 정렬을 수행하는 비교 정렬에 속한다. - 퀵 정렬은 n개의 데이터를 정렬할 때, 최악의 경우에는 O(n^2)번의 비교를 수행하고, 평균적으로 O(n log n)번의 비교를 수행한다. - 퀵 정렬의 내부 루프는 대부분의 컴퓨터 아키텍처에서 효율적으로 작동하도록 설계되어 있고(그 이유는 메모리 참조가 지역화되어 있기 때문에 CPU 캐시의 히트율이 높아지기 때문이다), 대부분의 실질적인 데이터를 정렬할 때 제곱 시간이 걸릴 확률이 거의 없도록 알고리즘을 설계하는 것이 가능하다. ..
삽입 정렬(Insertion Sort) 알고리즘 개념 삽입 정렬은 자료 배열의 모든 요소를 앞에서부터 차례대로 이미 정렬된 배열 부분과 비교하여, 자신의 위치를 찾아 삽입함으로써 정렬을 완성하는 알고리즘이다. k번째 반복 후의 결과 배열은, 앞쪽 k + 1 항목이 정렬된 상태이다. 카드게임을 할때와 유사하게 생각하면 좋다. 새로운 카드를 뽑을 경우 정렬된 카드 사이에 올바른 자리에 삽입하는 원리이다. 삽입 정렬 알고리즘의 동작 원리 - 상입 정렬은 두 번째 값을 시작으로 첫 번째 값과 비교한다. 비교 후에 삽입할 위치를 지정한 후 값을 알맞는 자리에 삽입하여 정렬한다. - 즉, 두 번째 값을 첫 번째 값과, 세 번째 값은 두 번째, 첫 번째 값과 네 번쨰 값은 세 번째, 두 번째, 첫 번째 값과 비교한다..