알고리즘, 자료구조

객체(Object)의 BigO 성능

2DC 2022. 8. 4. 16:43

객체란 무엇인가?

객체는 정렬되지 않은 키 값 쌍이다.

여기서 키포인트는 정렬되지 않았다는 것이다.

객체(Object) 안에 키값쌍이 마구잡이로 있다.

 

객체는 정렬되지 않은 키값쌍을 나타내는 자료구조며, 

따라서 정렬할 필요가 없는 데이터를 활용할 때 사용하면 가장 괜찮은 자료구조가 객체이다.

 

이 정렬되지 않는다는 장점은

객체의 삽입, 삭제, 검색, 접근에 따른 빅오 시간에 있다.

  • 삽입 : O(1)
  • 삭제 : O(1)
  • 검색 : O(N)
  • 접근 : O(1)

 

객체는 정렬이 되어있지 않으므로 삽입했을 때 다시 인덱스를 수정하는 등의 작업을 하지 않아도 된다.

그냥 해당 객체를 삽입하거나, 삭제하거나, 접근(Access)하면 된다.

따라서 삽입, 삭제, 접근의 빅오 노테이션은 O(1)이라고 할 수 있다.

 

다만 검색(Search)의 경우

해당 키(key)에 따른 (value)를 하나씩 뒤져야하므로

O(N)이 걸린다.