너비가 정수 인 항목 목록이 있는데, 왼쪽에서 오른쪽으로 간격을 쌓아서 해석 할 수 있습니다. 항목의 오프셋을 나타내는 아래누적 간격의 데이터 구조
숫자는 예를 들어, 상품의 폭을 각각 5,2,2,3,2 및도 4 A, B, C, D, E 및 F하고 있다고 가정 리스트의 시작
I 효율적으로 이상적 O 이하 (N)에 그 작업을 지원하는 데이터 구조를 찾고 있어요 :
- 가 주어진 위치에서 항목을 찾을 수 있습니다. 예를 들어 위치 11의 항목은 9부터 12까지이므로 D이고 위치 14의 항목은 거기서 시작된 이후 F입니다.
- 기존 항목 두 개 사이에 항목을 삽입하거나 기존 항목을 제거하십시오. 이것은 후속 항목의 위치를 이동시켜야합니다. 예를 들어 항목 E를 제거하면 항목 F가 왼쪽에서 두 자리로 이동하여 12에서 16으로 확장됩니다.
건너 뛰기 목록과 비슷한 항목을 사용하여 각 수준이 너비를 저장하고 있다고 생각했습니다. 아래의 레벨을 포함하지만, 나는 어떤 성능 특성을 얻을 수 있는지에 대해 너무 확신하지 못한다.
제안 사항?
아, 나는 이것이 잘 알려진 데이터 구조의 관점에서 표현 될 수 있다는 것을 알았습니다! 매우 우아합니다. – Trillian