01/10/2018, 00:05

Lưu trữ nhiều hơn Integer.MAX_VALUE (2^31) object trong List của Java

Mình có chương trình cần lưu tất cả các trạng thái của ma trận NxN . Với N=3 thì chỉ có 9! trạng thái vẫn trong giới hạn của Integer nên không vấn đề gì nhưng có vẻ với N=4 thì có 16! trạng thái và vượt quá kiểu Integer nên không thể lưu trong các kiểu list như Arraylist và Vector . Mọi người có giải pháp nào giúp mình với .

Đỗ Trung Quân viết 02:18 ngày 01/10/2018

Chuyển qua các kiểu không có index như LinkedList. Nhưng mình nghĩ Ram của bạn có thể không đủ dùng cho 16! object

Thiều Đình Anh viết 02:09 ngày 01/10/2018

ơng trình cần lưu tất cả các trạng thái của ma trận NxN . Với N=3 thì chỉ có 9! trạng thái vẫn trong giới hạn của Integer nên không v

LinkedList mình có thử qua và vẫn không được . Còn full ram đồng hồ trên window mình thấy vẫn khoảng 50-60% mà nhỉ .

Đỗ Trung Quân viết 02:18 ngày 01/10/2018

LinkedList tại sao không được, size của linkedlist phụ thuộc capacity của ram?

Ngoc Vo viết 02:06 ngày 01/10/2018

Bạn tăng heap size lên chưa?

Quân viết 02:11 ngày 01/10/2018

Dữ liệu mà tăng theo giai thừa thì ram bao nhiêu cho đủ, nên có phương án chia nhỏ dữ liệu thành nhiều phần,xử lý từng phần một tương tự cách mà Minecraft đang làm, lúc đó big data không phải vấn đề lớn quá

Bài liên quan
0