CSE 학부/알고리즘2024. 1. 11. 20:02Divide and Conquer - Matrix Multiplication / Karatsuba Algorithm
Matrix Multiplication n x n 행렬 두 개 곱셈 ⇒ 일반적인 방법으로는 O(n^3) Apply Divide and Conquer A는 4 x 4 행렬 |A B| |E F| = |AE + BG … |C D| |G H| |CE + DG … T(N) = 8T(N/2) : 8번의 곱셈 횟수 여전히 T(N) = O(N^3) Strassen’s Algorithm 위에서 이어져서 아래와 같이 곱셈 1번 계산으로 압축 가능. R = (A + D)(E + H) S = (C + D)E T = A(F - H) U = D(G - E) V = (A + B)H W = (C - A)(E + F) X = (B - D)(G + H) AE + BG = R + H - V + X AF + BH = T + V CE + D..