알고리즘

알고리즘 정리 - 배열,리스트

프흐프좋아 2023. 9. 21. 21:34

1. 배열(Array)

- 가장 기본적인 자료구조

- 여러개의 변수를 담는 공간

장점: 캐시(cache) 히트 가능성이 높으며, 조회가 빠르다.

단점: 배열의 크기를 미리 지정해야 하는 것이 일반적이므로, 데이터의 추가 및 삭제에 한계가 있다.

 

2. 연결 리스트(Linked List)

- 배열과 다르게 크기가 정해져 있지 않고, 리스트의 크기는 동적으로 변경 가능하다.

장점 : 포인터(pointer)를 통해 다음 데이터의 위치를 가리킨다는 점에서 삽입과 삭제가 간편하다.

단점 : 특정 번째의 원소를 검색할 때는 앞에서부터 원소를 찾아야 하므로, 데이터 검색 속도가 느리다.

 

형태

포인터 : 다음 노드의 메모리 주소를 가리키는 목적으로 사용된다

연결성: 각 노드의 포인터는 다음 혹은 이전 노드를 가리킨다.

데이터 포인터

=> 스택, 큐와 같은 자료구조를 구현할 수 있다

 


자바스크립트(javascript) 에서 배열 만들기

// 원하는 값을 직접 입력하여 초기화
let arr1 = [0, 1, 2, 3, 4];
console.log(arr1);

// 하나의 값으로 초기화
let arr2 = Array.from({ length: 5 }, () => 7);
console.log(arr2);