반응형

Computer Science 4

삽입 정렬 알고리즘

삽입정렬 - 각 숫자를 적절한 위치에 삽입하는 방법 - 필요한 때만 위치를 바꾼다. (선택 정렬과 버블정렬보다 더 빠름) - 시간 복잡도 O(N^2)- 기본적으로 i이전의 값들이 정렬이 되어있다고 가정- 특정한 경우에는 굉장히 빠르게 작동   - 거의 정렬된 상태에 한해서는 어떤 알고리즘보다 빠름 정리) 시간복잡도 O(N^2)를 가지는 정렬 알고리즘 : 선택 정렬, 버블 정렬, 삽입 정렬  내가 작성한 코드 function insertSort(arr){ for(let i=1; i value){ let temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; j-- }..

버블 정렬 알고리즘

현재 값과 다음값을 비교해서 더 큰 값을 뒤로 배치한다. => 이 과정을 반복하다 보면  가장 큰 값인 5가 맨 뒤로 가게 됐다. 이 과정을 반복해보자가장 큰 값인 4가 맨 뒤로 가게 됐다. 이 과정을 반복해보자.  이 쯤 눈치를 챘는가? 배열 전체를 통해 숫자를 비교하는 횟수가 점점 줄어들고 있다. 이유) - 한번 배열 훑는 과정거칠 때마다 가장 큰 값이 맨 뒤에 고정된다. => 그러니, 그 숫자 이전까지만 배열을 훑어주면 된다.  특징 - 시간 복잡도는 O(N^2)- 선택 정렬 알고리즘도 시간 복잡도는 O(N^2)이지만, 버블 정렬 알고리즘 수행시간이 더 오래 걸린다. => 이유: 버블 정렬은 매 순간 숫자들의 위치를 이동시키기 때문이다. 선택 정렬은 전체 배열 훑은 다음에 가장 작은 값을 맨 앞에 ..

선택 정렬 알고리즘

선택 정렬 알고리즘 - 정렬 알고리즘 중 하나. - 배열을 반복적으로 순회하여 가장 작은(혹은 가장 큰) 요소를 찾아 맨 앞의 요소와 교환하는 방식으로 정렬합니다. 선택 정렬 알고리즘 설명첫 번째 위치에 대해:배열에서 가장 작은 요소를 찾아 첫 번째 요소와 교환합니다.두 번째 위치에 대해:첫 번째 요소를 제외한 나머지 배열에서 가장 작은 요소를 찾아 두 번째 요소와 교환합니다.이 과정을 마지막까지 반복:배열 전체가 정렬될 때까지 이 과정을 반복합니다.  선택 정렬 알고리즘 구현 function selectSort(arr){ for(let i=0; i arr[j]){ min = j; } } let temp = arr[i]; ..

스택 자료구조(Stack) 간단 정리 - javascript

## 스택 ### 1. 스택이란? 자료구조의 한 형태로, 후입선출(LIFO:Last In, First Out) 방식으로 동작한다. 즉, 마지막에 삽입된 데이터가 가장 먼저 삭제되는 구조다. ### 2. 스택 동작 이해하기 기본적인 연산1) `push`  : 스택의 맨 위에 데이터를 삽입하는 연산. 2) `pop` : 스택의 맨 위에 있는 데이터를 삭제하고 반환하는 연산. 3) `peek` 또는 `top` : 스택의 맨 위에 있는 데이터를 삭제하지 않고, 반환하는 연산.4) `isEmpty` : 스택이 비어있는지를 확인하는 연산. 5) `size` : 스택에 있는 데이터의 개수를 반환하는 연산.  ### 3. 스택의 사용예시 1) 함수 호출 스택: 함수가 호출될 때마다 스택에 호출 정보가 저장되고, 함수가..

반응형