У меня есть квадрат n * n матрицы S, который необходимо разложить на произведение двух матриц - A1 и A2, где A2 - транспонированная матрица в A1 (A2 = A1 ^ T), поэтому A1 * A2 = S.Существуют ли алгоритмы для эффективного выполнения такой операции?Решение на C # / C ++ было бы неплохо.