Tôi có một tình huống sau: Tôi có một chuỗi các vectơ và với mỗi tôi muốn tính toán sản phẩm trong đó được cố định ngay từ đầu. Mặc dù không có thông tin về cấu trúc của , thường có một mẫu cụ thể trong đó nhiều giá trị được lặp lại và tôi muốn tính toán các sản phẩm này càng nhanh càng tốt.A x i A x i A
Một ví dụ về trông như thế này:
Ở đây các vùng màu trắng là 0.
Tôi tự hỏi nếu có một số cách lưu trữ thông tin về hoặc sửa đổi nó bằng cách nào đó sẽ cho phép tôi giảm số lượng hoạt động cho mỗi sản phẩm. Đối với các hàng là 0, điều này là không quan trọng - người ta chỉ có thể lưu trữ các chỉ báo hàng biểu thị các hàng đó. Cũng có thể lưu trữ thông tin về các hàng được sao chép để sử dụng lại các tính toán hàng. Tôi cũng đã xem xét việc sắp xếp các hàng của ma trận như để giảm thiểu sự khác biệt trung bình giữa mỗi hàng và chỉ tính toán sự khác biệt ở mỗi hàng. Điều này dường như gặp vấn đề cho các mẫu phức tạp hơn, tuy nhiên.
Tôi đã tự hỏi nếu có bất kỳ phương pháp được biết đến cho các loại vấn đề.
Chỉnh sửa: một ý tưởng khác tôi đã có là từ khi không. các giá trị duy nhất trong ma trận khá thấp, người ta có thể phân tách sản phẩm dưới dạng trong đó chỉ chứa một giá trị duy nhất, nhưng tôi vẫn không chắc liệu điều này có thể cung cấp bất kỳ lợi thế nào cho vấn đề này không.Một i