Page 28 -
P. 28
예제를 통해 4단계가 필요함을 알았다. 데이터를 오른쪽으로 옮기는 3단계와 실제로 새 값을 삽 1
입하는 1단계다.
배열 삽입에서 최악의 시나리오, 즉 삽입에 가장 많은 단계가 걸리는 시나리오는 데이터를 배열의
맨 앞에 삽입할 때다. 배열의 앞에 삽입하면 배열 내 모든 값을 한 셀씩 오른쪽으로 옮겨야 하기 때 자료 구조가 중요한 까닭
문이다.
다시 말해 원소 N개를 포함하는 배열에서 최악의 시나리오일 때 삽입에는 N+1단계가 걸린다.
N개의 원소를 전부 이동시키고 끝으로 실제 삽입 단계를 실행해야 하기 때문이다.
삽입을 알아봤으니 이제 배열의 마지막 연산인 삭제만 남았다.
1.7 삭제 DATA STRUCTURES AND ALGORITHMS
배열의 삭제는 특정 인덱스의 값을 제거하는 과정이다.
원래의 예제 배열로 돌아가서 인덱스 2의 값을 삭제해 보자. 값은 "cucumbers"다.
1단계: 배열에서 "cucumbers"를 삭제한다.
그림 1-17
"cucumbers"를 삭제하는 데 실제로는 기술적으로 한 단계만 걸리지만 문제가 하나 있다. 바로
배열 중간에 비어 있는 셀이다. 배열 중간에 빈 공간이 있으면 효율적이지 않으니 "dates"와
"elderberries"를 왼쪽으로 옮겨 문제를 해결해야 한다. 삭제 과정에 단계가 더 필요하다는 뜻
이다.
041