Tôi đã viết một số mã và tôi đã tìm ra rằng tôi có thể tạo một bản đồ vô hạn từ một danh sách vô hạn các bộ dữ liệu. Nội dung nào đó dọc theo các dòng sau: Map.fromList [(i,i+1)|i<-[1..]]
Bản đồ vô hạn trong Haskell
Tất nhiên, tôi đã phát hiện ra ngay lập tức rằng Data.Map và Data.Set không hỗ trợ Bản đồ và Bộ vô hạn tương ứng. Tôi nhận thấy một câu hỏi tương tự về việc thực hiện tham lam của Data.Set fromList
, và sau khi đọc qua các câu trả lời here, rõ ràng là cả việc triển khai lười biếng và tham lam đều có thể cho Set, chỉ là những tham lam hoạt động tốt hơn. Tôi không thực sự hiểu, tuy nhiên, tại sao việc thực hiện lười biếng của Map.fromList
sẽ không hoạt động. Một cái gì đó để làm với các phím được lưu trữ như thế nào?
Làm cách nào bạn biết phần tử nào trong danh sách sẽ là nút gốc của cây cuối cùng mà không biết toàn bộ danh sách? – sepp2k