Udemy - 배열과 오브젝트의 성능 평가


💡 BigO(빅오)의 관점에서 자바스크립트의 배열과 객체는 어떻게 작동하는가?


객체 (Object)

객체란, 순서가 배정되지 않은 “키-값” 구조로 저장된 데이터 구조다.

1
2
3
4
5
let family = {
Dad: 'Kim',
Mom: 'Lee',
Son: 'Kim.JR',
};
  1. 특징
    • 순서가 없다는 특징 때문에 접근 및 삽입/제거가 빠르다. O(1)
    • 객체 탐색의 경우는 O(N)으로, 이 또한 속도가 빠른 편이다.

배열 (Array)

순서가 존재하는 데이터 구조.

1
const dogs = ['jake', 'ppoya', 'apple'];
  1. 시간 복잡도

    배열의 첫 번째 인덱스에 삽입이나 제거 등의 동작이 일어날 때, 효율성에 문제가 생길 수 있다.
    ( 그 뒤의 아이템들이 밀리거나 당겨지며 인덱스가 변하기 때문)

    • 접근 : O(1)
    • 끝부분 삽입 : O(1)
    • 앞부분 삽입 : O(N)
    • 앞부분 제거 : O(N)
    • 이동 : O(N)

Udemy - 배열과 오브젝트의 성능 평가

https://hoonjoo-park.github.io/algorithm/udemy/2. Arr_Obj/

Author

Hoonjoo

Posted on

2022-01-10

Updated on

2022-02-07

Licensed under

Comments