我想了解this analysis of Strassen's algorithm乘法k×k矩陣。但我仍然不太確定有多少操作被調用。有人可以幫助澄清這一點?對於大小爲k x k的矩陣,Strassen算法有多少個浮點運算?
2
A
回答
0
鑑於頁面顯示它大約爲O(N^2.807 ...),我想這應該是浮點運算數的一個很好的近似值。所有循環/迭代都將使用整數運算。
2
執行的操作次數如下確定。首先,我們將矩陣分成四個大小爲k/2的子小塊,然後對這些矩陣執行7次遞歸乘法。然後,我們會不斷增加這些產品以獲得理想的結果。這給了我們所定義的遞推關係如下:
T(1)= 1
T(K)= 7T(K/2)+ CK
注意,LG的7> 2 ,因爲lg 7> lg 4 = 2(這裏lg是二進制對數)。因此,通過情況中的一個,算法的漸近複雜度是O(k lg 7)≈ O(k 2.807)。
希望這會有所幫助!
相關問題
- 1. Strassen算法的矩陣分區
- 2. 如何確定k最近鄰算法中k矩陣的k值
- 3. Strassen具有遞歸的子立方矩陣乘法算法
- 4. 當k = 4時k進制搜索算法的運算次數?
- 5. K-means算法
- 6. 對於每個k = 1的所有大小爲k的子陣列的最大總和爲n .. n
- 7. K中心算法
- 8. 具有真正大矩陣的K-means
- 9. 第K個最小元素算法
- 10. k最近鄰居算法k的值
- 11. 用於最小最大連續k分區的更快算法
- 12. 爲所有k句子執行K組合的算法
- 13. 將X中的所有x_i拆分爲K個組s.t. var(K中的k的總和(x in k))最小化
- 14. 具有相同簇大小的K均值算法變化
- 15. 減去矩陣,K尺寸從n個的矩陣陣列中,K個維度
- 16. 在k <n的算法運行時log(n)vs log(k)
- 17. 擊敗Strassen算法的算法
- 18. 等k子集算法
- 19. 從Python中的stdin中讀取k個矩陣大小nxm
- 20. 計算一個大矩陣內出現的矩陣的算法
- 21. 用於在n位上生成大小爲k的糾錯碼的算法
- 22. 是否有一個Java庫實現Strassen的矩陣求逆算法?
- 23. K均值算法C++,交換點?
- 24. 爲什麼更換矩陣NaN的不包括K(K == NAN)= SomeNumber,其中k爲矩陣操作
- 25. 計算所有d維度小於k的單項式
- 26. Mata矩陣運算
- 27. 錯誤在K-means算法
- 28. 增量k覈算法
- 29. 實現K-Means算法JDBC
- 30. k-最近鄰算法