TIL_2024_01_04

이종현·2024년 1월 4일
0

Today_I_Learned

목록 보기
117/145
post-thumbnail

Today 요약

1.CS 면접대비


1. What I Learned?

CS 면접대비

Array는 어떤 자료구조 인가요?

Array는 연관된 데이터를 순차적이며 연속적으로 할당된 크기만큼 저장하는 자료구조입니다.

Array의 특징

  • 연속적이며 순차적으로 저장하기 때문에 특정 인덱스를 조회하는 것은 첫 데이터에서 인덱스만 더해서 조회하면 되기 때문에 시간복잡도가 O(1)입니다.
  • 또한 가장 마지막 데이터에 더하거나 마지막 데이터를 삭제할 때도 마지막 인덱스에 접근해서 더하거나 삭제하면 되기 때문에 이 또한 시간복잡도가 O(1)입니다.
  • 하지만 중간에 더하거나 삭제할 때는 더하거나 삭제하고자 하는 인덱스 뒤에 있는 배열 요소들을 뒤로 전체적으로 밀어주거나 앞으로 당겨주어야 하기 때문에 이 경우에는 시간복잡도가 O(n)입니다.
  • 그리고 특정 값을 검색할 때도 배열을 모두 일일히 접근해서 해당 데이터가 내가 찾고자 하는 데이터와 일치하는지 비교 검색해야 되기 때문에 검색할 때도 시간복잡도는 O(n)입니다.
  • 할당된 크기만큼 저장하기 때문에 메모리가 낭비되거나 추가적인 오버헤드가 발생할 수 있습니다.
profile
데이터리터러시를 중요하게 생각하는 프론트엔드 개발자

0개의 댓글