演算法設計與分析 矩陣連乘順序問題

2021-06-27 23:39:11 字數 751 閱讀 8896

#define n 50

#include

#include

class matrix

; //建構函式,作變數初始化工作,為指標分配記憶體空間

matrix::matrix()

p = new int[n]; }

//析構函式,釋放記憶體

matrix::~matrix()

delete m;

delete s;

delete p; }

//處理鍵盤輸入

bool matrix::input()

//cout<

} if(p!=null)

return true;

else

return false; }

//計算最優值演算法

bool matrix::matrixchain()

} }

return true; }

//輸出矩陣結合方式,加括號

void matrix::traceback(int i,int j,int **s)

else if(i 1 == j)

else

} bool matrix::run()

else

return false;

} else

return false; }

void main()

演算法設計與分析 矩陣連乘問題(動態規劃)

引出問題之前我們先來複習一下矩陣乘積的標準演算法。int ra,ca 矩陣a的行數和列數 int rb,cb 矩陣b的行數和列數 void matrixmultiply c i j sum 給定n個矩陣 a1,a2,an 其中ai與ai 1是可乘的,i 1,2 n 1。如何確定計算矩陣連乘積的計算次...

演算法設計 矩陣連乘問題

白天什麼也沒學,晚上才終於拿著筆,對著 寫寫畫畫,終於看明白是怎麼計算的了。以這6個矩陣連乘作為例子 a1a2 a3a4 a5a6 30 35 35 15 15 5 5 10 10 20 20 25 1 首先,要明白兩個矩陣相乘所需要做的乘法次數 2 由於連乘的矩陣必須滿足,前乙個矩陣的列數 後乙個...

演算法分析之矩陣連乘問題

一,問題描述 給定n個矩陣 a1,a2,an 其中,ai與ai 1是可乘的,i 1,2 n 1 不同的計算次序計算量 乘法次數 是不同的,要求通過輸入矩陣的個數和每個矩陣的規模大小,從而確定矩陣連乘積的計算次序和最少數乘次數使得矩陣連乘的次數最小。分析 矩陣連乘的條件 第乙個矩陣的列等於第二個矩陣的...