일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- media query
- JS
- github
- 변수
- redux
- webpack
- CSS
- TypeScript
- 프론트엔드
- coding
- 반응형 페이지
- node.js
- node
- 코드업
- frontend
- max-width
- cleancode
- Servlet
- git
- HTML
- react-router-dom
- 코딩테스트
- 자바문제풀이
- 자바
- 그럼에도 불구하고
- java
- react
- @media
- 그럼에도불구하고
- JavaScript
- Today
- Total
목록알고리즘 (3)
그럼에도 불구하고
기수 정렬에 대해 알아보겠습니다. 🧑🏻💻 기수 정렬 (Radix Sort) 기수 정렬이란 낮은 자릿수부터 비교하여 정렬해 간다는 것을 기본 개념으로 하는 정렬입니다. 이는 요소 간의 비교를 하는 것이 아니며 숫자의 크기에 대한 정보가 자릿수로 인코딩 된다는 사실을 이용합니다. 📌 Radix Sort Helpers 기수 정렬을 구현하려면 먼저 몇 가지 도우미 함수를 구축하는 것이 도움이 됩니다. ⭐️ getDigit(num, place) 주어진 자릿값에서 num의 숫자를 반환합니다. function getDigit(num, i) { return Math.floor(Math.abs(num) / Math.pow(10, i)) % 10; } getDigit(12345, 0); // 5 getDigit(1234..
병합 정렬에 대해 알아보겠습니다. 🧑🏻💻 병합 정렬 (Merge Sort) 병합 정렬은 존 폰 노이만(John von Neumann)이라는 사람이 제안한 방법입니다. 이 알고리즘을 사용하면 O(n^2)에서 O(nlogn)까지 시간 복잡도를 개선할 수 있습니다. 일반적인 방법으로 구현했을 때 이 정렬은 분할 정복 알고리즘의 하나입니다. 📌 분할 정복(divide and conquer) 문제를 작은 2개의 문제로 분리하고 각각을 해결한 다음, 결과를 모아서 원래의 문제를 해결하는 전략입니다. 분할 정복 방법은 대개 순환 호출을 이용하여 구현합니다. ⭐️ 과정 설명 - 리스트의 길이가 0 또는 1이면 이미 정렬된 것으로 봅니다. - 정렬되지 않은 리스트를 절반으로 잘라 비슷한 크기의 두 부분 리스트로 나눕니..
버블 정렬, 선택 정렬, 삽입 정렬에 대해 알아보겠습니다. 🧑🏻💻 정렬이 무엇인가? 정렬은 항목이 일종의 순서가 되도록 컬렉션(예: 배열)의 항목을 재정렬하는 프로세스입니다. 📌 정렬을 왜 알아야 하는가? - 정렬은 매우 일반적인 작업이므로 작동 방식을 아는 것이 좋습니다. - 물건을 분류하는 방법에는 여러 가지가 있으며, 기술마다 장단점이 있습니다. ⭐️ 버블 정렬 (Bubble Sort) 버블 정렬은 잘 사용되지 않고 엄청 효율적이지는 않습니다. 하지만 어떻게 사용하는지 알면 재미있는 정렬 방식입니다. 버블 정렬의 개념은 배열을 가장 작은 숫자에서 가장 큰 숫자 순으로, 즉 오름차순으로 정렬한다면 더 큰 숫자가 한 번에 하나씩 뒤로 이동한다는 것입니다. 📚 버블 정렬 예시 - 배열의 끝인 i라는 변..