순차적인 데이터를 저장할 때 (값 자체보다 순서가 더 중요할 경우)
다차원 데이터를 다룰 때
어떠한 특정 요소에 대한 빠른 접근이 필요할때
데이터의 사이즈를 예측 가능할 때
array는 배열이 생성될 때 어느정도의 메모리를 pre-allocation하는데
리스트 내의 요소들이 할당된 메모리보다 많아진다면 resizing이 필요한데
이를 위하여 O(n)만큼의 추가적인 시간이 필요하게 된다
요소의 추가 및 삭제가 자주 일어나지 않을 때
리스트의 중간요소에 대한 삽입이나 삭제가 일어났을 때 삽입, 삭제된 요소부터
뒤 인덱스를 가진 요소들에 대하여 이동이 요구되기 때문에 다른 자료구조에 비하여
삽입, 삭제에 드는 시간이 늘어날 수 있다
간단한 소규모 데이터를 표현할 때
Tuple은 List보다 메소드가 적어 메모리 점유량도 적다
값이 변경되면 안되는 경우
Tuple은 immutable한 객체로 값을 변경할 수 없다