У меня есть Матрица размера D от D (реализована как List [List [Int]]) и Вектор размера D (реализована как List [Int]) , Предполагая значение D = 3 , я могу создать матрицу и вектор следующим образом.
val Vector = List(1,2,3)
val Matrix = List(List(4,5,6) , List(7,8,9) , List(10,11,12))
Я могу умножить их на
(Matrix,Vector).zipped.map((x,y) => (x,Vector).zipped.map(_*_).sum )
Этот код умножается матрица с вектором и возвращает мне вектор по мере необходимости. Я хочу спросить, есть ли более быстрый или оптимальный способ получить тот же результат, используя Scala функциональный стиль? Как и в моем сценарии, у меня гораздо большее значение D .