삽입 정렬 (Insertion Sort)
·
Algorithm/Theory
삽입 정렬(Insertion Sort) 소개삽입 정렬은 비교적 간단하고 직관적인 정렬 알고리즘입니다. 작은 데이터를 정렬할 때는 매우 효율적이지만, 데이터의 양이 많아지면 비효율적이 될 수 있습니다. 삽입 정렬의 기본 아이디어는 이미 정렬된 부분 배열을 확장해 나가면서 새로운 요소를 올바른 위치에 삽입하는 것입니다. 삽입 정렬의 의사 코드배열에서 두 번째 요소를 선택하여 시작합니다.두 번째 요소를 이전 요소와 비교하고 필요한 경우 스왑합니다.다음 요소로 계속 진행하고, 잘못된 순서일 경우 정렬된 부분(즉, 왼쪽)을 반복하여 요소를 올바른 위치에 배치합니다.배열이 정렬될 때까지 이 과정을 반복합니다. 삽입 정렬 구현다음은 삽입 정렬을 JavaScript의 ES6 문법으로 구현한 예제입니다:const ins..
선택 정렬 (Selection Sort)
·
Algorithm/Theory
선택 정렬 소개선택 정렬은 정렬 알고리즘 중 하나로, 버블 정렬과 비슷하지만 큰 값을 배열 끝에 위치시키는 대신 작은 값을 한 번에 하나씩 위치에 배열하는 방식입니다. 선택 정렬 동작 방식첫 번째 요소를 가장 작은 값으로 저장합니다.이 요소를 배열의 다음 요소와 비교하여 더 작은 수를 찾을 때까지 계속합니다.더 작은 수를 찾으면, 그 작은 수를 새로운 "최소값"으로 지정하고 배열의 끝까지 계속합니다."최소값"이 처음 시작한 값(인덱스)이 아닌 경우, 두 값을 교환합니다.배열이 정렬될 때까지 다음 요소로 이 과정을 반복합니다. 선택 정렬 의사 코드{for i from 0 to n-1: minIndex = i for j from i+1 to n: if array[j]  선택 정렬 구현..
문제 해결 접근법
·
Algorithm/Theory
목표알고리즘이 무엇인지 이해합니다.알고리즘을 해결할 계획을 세웁니다. 알고리즘이란?알고리즘은 특정 작업을 달성하기 위한 과정이나 일련의 단계를 의미합니다. 이는 컴퓨터 과학에서 매우 중요한 개념으로, 문제 해결의 기본입니다. 알고리즘을 알아야 하는 이유프로그래밍에서 수행하는 거의 모든 작업에는 기본적이든 복잡하든 일종의 알고리즘이 포함됩니다. 문제를 효율적으로 해결하기 위해서는 알고리즘을 이해하고 활용하는 능력이 필요합니다. 문제 해결을 위한 계획을 수립하기1단계: 문제를 이해하기문제를 이해하는 것은 첫 번째 단계입니다. 다음 질문들을 통해 문제를 명확히 할 수 있습니다.문제를 내 방식대로 생각할 수 있는가?문제가 어떤 입력값을 가지고 있는가?문제에 대한 해결책에서 나와야 하는 결과가 무엇인가?입력값이 ..
얼은펭귄
'코딩' 태그의 글 목록