Nhảy chuyển đến

Nhưng kéo dài hóa số liệu kết cấu tóm tắt

Tóm tắt

Nhưng kéo dài hóa số liệu kết cấu (Persistent data structure) luôn là có thể giữ lại mỗi một cái lịch sử phiên bản, hơn nữa duy trì thao tác không thể đổi đặc tính (immutable).

Nhưng kéo dài hoá phân loại

Bộ phận nhưng kéo dài hóa (Partially Persistent)

Sở hữu phiên bản đều có thể phỏng vấn, nhưng là chỉ có mới nhất phiên bản có thể sửa chữa.

Hoàn toàn nhưng kéo dài hóa (Fully Persistent)

Sở hữu phiên bản đều đã có thể phỏng vấn lại có thể sửa chữa.

Nếu duy trì đem hai cái lịch sử phiên bản xác nhập, tắc lại xưng là Confluently Persistent

Thực tế ứng dụng

Bao nhiêu tính toán

Ở bao nhiêu tính toán trung có rất nhiều ly tuyến thuật toán, như rà quét tuyến thuật toán một lần đảo qua đi trả lời sở hữu dò hỏi, ở thời gian phức tạp độ phân tích thượng tương đương ưu dị. Nhưng cưỡng bách tại tuyến dưới tình huống, mỗi một lần đều rà quét một lần, dò hỏi thao tác thời gian phức tạp độ liền từ đối số thời gian hàng thành tuyến tính. Vì giải quyết này một loại tình huống, kéo dài hóa kỹ thuật cho một loại khác tư duy, chúng ta đem rà quét tuyến thời gian trục làm một cái biến động căn cứ, kéo dài hóa tương quan kết cấu, chỉ cần chúng ta có thể đem dò hỏi ở đối số thời gian nội xuyên qua với thời gian này trục, nhất định có thể động thái giải quyết lúc trước vấn đề.

Tự xuyến xử lý

Vì đạt tới phi thường hiệu suất cao xác nhập thao tác, phòng ngừa đại lượng lặp lại tính tự xuyến sinh thành cùng với hiệu năng thoái hóa, khiến cho các phương diện thao tác đều có thể xa thấp hơn tuyến tính thao tác. Như C++ rope chính là một cái kéo dài hóa số liệu kết cấu. Không chỉ là tự xuyến thao tác, nếu xử lý loại hình có đại lượng lặp lại tình huống, kéo dài hóa khái niệm liền có thể có tác dụng.

Phiên bản hồi tưởng

Trên thực tế chính là đối ứng đại bộ phận ứng dụng mềm thể trung redo/undo. Nếu cơ sở dữ liệu / thao tác biến động vì hiệu suất cao thao tác mà sẽ xứng với phức tạp kết cấu ( cũng không giống hash, set xoay ngược lại thao tác chỉ cần hằng số hoặc đối số thời gian ), như vậy vì nhanh chóng hồi đẩy biến động kết quả, kéo dài hóa kết cấu chính là muốn giảm bớt redo/undo tiêu phí.

Cơ sở dữ liệu bản thân có thể hằng số hồi đẩy, kỷ lục biến động bộ phận tình huống là được. Mà ứng dụng tầng tính toán, đại bộ phận thật làm đều là chém rớt mau lấy, hơn nữa một lần nữa tính toán ra một phần tân kết cấu, có đôi khi hồi đẩy biến động lớn nhỏ vì m, vì một lần nữa tính toán kết cấu mà tiêu hao n+m, nếu n cùng m chênh lệch phi thường đại, kia liên tục hồi đẩy thể cảm liền rất không xong.

Hàm số thức biên trình

Hàm số thức biên trình yêu cầu đặc biệt số liệu kết cấu lấy phù hợp ngôn ngữ đặc tính, trong đó không thể đổi tính chất càng vì quan trọng, lấy lợi cho song hành hoàn cảnh cùng trừ sai. Như mặt hướng đối tượng biên trình Java 8 sau dẫn vào stream loại, chi viện viết ra hàm số thức ngữ pháp thiết kế, nhưng cung cấp tính trơ cầu giá trị, vô hạn giá trị vực chờ đặc thù công năng.

Tham khảo