С++ Эффективное вычисление произведения матриц
Подскажите, пожалуйста, в чём причина существования разницы во времени в следующих вариантах вычисления произведения двух квадратных матриц? (С++)
- Перемножение двух квадратных матриц, сохранённых в двумерных массивах с указателями
- Такое же перемножение (двумерные массивы), только с предварительным транспонированием одной из матриц
- Перемножение двух матриц, сохранённых в одномерных массивах
- Такое же перемножение (одномерные массивы), только с предварительным транспонированием одной из матриц
Также какой из способов самый быстрый/медленный и почему?