출처 - 코드없는 프로그래밍
Array - 가장 간단한 자료 구조
array란
데이터들이 연속적으로 이어져있고
랜덤 엑세스를 지원하는 자료 구조를 말한다.
* 랜덤 엑세스 - 인덱스를 통해 바로 접근할 수 있게 해준다.
배열 문제는 인덱스를 사용할 수 있다는 점을 중요하게 사용하게 됨.
ex - array를 활용한 BackTracking (?)
기본적인 문제의 경우,
sorting과 관련이 된다.
sorting의 종류에는 heap sort / quick sort / merge sort가 있다.
배열이 stable하면 merge sort
배열이 unstable하면 quick sort, heap sort를 사용한다.
이때 stable한 것은, 정렬이 된 후에도 ABCDE 등 본래 순서를 유지하는 경우
unstable한 것은 그렇지 않은 경우를 의미한다.
만약 배열이 정렬이 되어 있으면 binary search를 사용할 수 있고 O(logn)
그렇지 않으면 배열의 모든 요소를 돌어야 한다. O(n)
search가 중요함. 배열의 모든 요소를 돌아야 한다. O(n)
다음은 2차원 array, 다차원 배열
이들은 대부분 graph 문제다.
'Computer Science > 자료구조' 카테고리의 다른 글
코딩테스트 Arrays moveZeros | 코드없는 프로그래밍 (0) | 2021.09.05 |
---|---|
코딩테스트 기초 배열 Binary Search | 코드없는 프로그래밍 (0) | 2021.09.05 |
Back to 알고리즘! | 코딩테스트 연습 level 2- 124 나라의 숫자들 (0) | 2021.09.02 |
[7.4] 이상한 문자 만들기 알고리즘 (50/100) (0) | 2021.07.04 |
[7.4] 시저 암호 알고리즘 (49/100) (0) | 2021.07.04 |