Tôi đang tìm kiếm một cấu trúc dữ liệu liên tục tương tự như mảng (nhưng không thay đổi), cho phép lập chỉ mục nhanh, nối thêm, trả trước và lặp lại (địa phương tốt).
Clojure cung cấp Vector liên tục, nhưng nó chỉ để nối nhanh. Scala's Vector có thêm và bổ sung thời gian liên tục một cách hiệu quả, nhưng tôi không thể hiểu được cách thức triển khai, vì nó dựa trên cùng cấu trúc dữ liệu (vectơ ánh xạ bit) như vectơ Clojure, và, như tôi hiểu, trie vector ánh xạ bit không thể có tiền gửi nhanh mà không có một số thủ thuật.
Tôi quan tâm không sẵn sàng để sử dụng triển khai nhưng trong một mô tả về cách tự thực hiện cấu trúc dữ liệu như vậy.