Theo F # 's list
documentation:Tại sao phải triển khai danh sách không thể thay đổi dưới dạng danh sách được liên kết?
"Một danh sách trong F # là một lệnh, bất biến loạt các yếu tố cùng loại"
"Lists trong F # được thực hiện như các danh sách được liên kết đơn lẻ "
Tại sao không thực hiện nó liên tục trong bộ nhớ vì nó không thay đổi và do đó có kích thước cố định? Tại sao lại sử dụng F # list
thay vì F # array
?
Liên quan: [Tại sao danh sách khuyết điểm được liên kết với lập trình chức năng?] (Http://programmers.stackexchange.com/questions/132309/why-are-cons-lists-associated-with-functional-programming) – ryanpattison
Một điều để xem xét là danh sách không thực sự là kích thước cố định - bạn viết rất nhiều mã giống như 'nếu có gì đó sau đó: :(recurse ...) else []' ở đây, xây dựng danh sách có danh sách được liên kết là tự nhiên –
@JohnPalmer có, chúng * là * kích thước cố định. Khi bạn thêm một phần tử, nó sẽ tạo một danh sách * mới *. Danh sách gốc vẫn tồn tại và không thay đổi theo bất kỳ cách nào. – latkin