빨강 | 주황 | 노랑 | 초록 | 파랑 |
0 | 1 | 2 | 3 | 4 |
위와 같은 인덱스에 해당되는 배열이 있을때,
1. Reading
노랑의 위치를 알고 있는 경우 index = 2로 원하는 데이터를 빨리 읽을 수 있다.
많은 자료를 읽어야 한다면 배열이 빠르다.(Random Access 때문)
2. Searching
노랑을 찾고 싶은데 어디있는지 알수가 없어 하나하나 열어서 봐야한다.
인덱스 0번부터 배열의 길이까지 순차적으로 검색을 해야함
=> Linear Search(선형 검색)
3. Insert
배열은 선언시에 길이를 정해야 한다.
비어있는 마지막 인덱스에 추가를 하면 빠르지만,
중간에 삽입 할 경우 뒤의 요소들을 하나씩 미뤄야 하므로 느리다.
4. delete
마지막 인덱스를 삭제하면 빠르지만,
중간 데이터를 삭제할 경우 앞으로 땡겨줘야 하므로 느리다.
즉, 배열은 데이터를 읽을때는 속도가 빠르지만, 검색 추가 삭제는 느리다.
단, 추가 삭제의 경우 배열의 맨 끝에서 작업하는 것은 빠르다.