delete解决办法
delete
不知道为什么 delete的时候会有错误
望高人指点迷津
------解决方案--------------------
RecurMaxtrixChain 里有问题
------解决方案--------------------
不懂帮定
- C/C++ code
#include<iostream> #include <iomanip> using namespace std; const int N = 6; //递归求解矩阵连乘问题 int RecurMaxtrixChain(int *p, int i, int j, int **s){ if(i == j) return 0; int u = RecurMaxtrixChain(p, i, i, s) + RecurMaxtrixChain(p, i + 1, j, s) + p[i - 1] * p[i] * p[j]; s[i][j] = i; for(int k = i + 1; k < j; k++){ int t = RecurMaxtrixChain(p, i, k, s) + RecurMaxtrixChain(p, k + 1, j, s) + p[i - 1] * p[k] * p[j]; if(t < u){ u = t; s[i][j] = k; } } return u; } //输出结果 void View(int i,int j,int **s) { if (i == j) { cout<<"A"<<i; return; }else if (i < j) { cout<<"("; View(i,s[i][j],s); View(s[i][j] + 1,j,s); cout<<")"; } return; } void RecurTest() { int p[] = {30, 35, 15, 5, 10, 20, 25}; int **s = new int * [N + 1]; for(int i = 1; i <= N; i++) { *(s + i) = new int[N]; } RecurMaxtrixChain(p, 1, N, s); View(1, N, s); for(int i = 1; i <= N; i++) delete *(s + i); delete s; } void main() { //TraceTest(); //矩阵连乘 RecurTest(); //递归矩阵连乘 getchar(); }
不知道为什么 delete的时候会有错误
望高人指点迷津
------解决方案--------------------
RecurMaxtrixChain 里有问题
------解决方案--------------------
不懂帮定