动态规划算法拔萝卜c++代码
时间: 2023-10-25 17:11:04 浏览: 221
这是关于01背包问题的动态规划算法。采用C++语言完成的,代码间有注释.rar
动态规划算法拔萝卜的 C++ 代码如下所示:
int minCut(string s) {
int size = s.length();
if (size == 0 || size == 1) return 0;
vector<vector<int>> dp(size, vector<int>(size, 0));
vector<int> min_cut(size + 1, size - 1);
min_cut = -1;
for (int i = 0; i < size; i++) {
for (int j = 0; j <= i; j++) {
if (s[i] == s[j] && (i - j <= 1 || dp[j + 1][i - 1])) {
dp[j][i] = 1;
min_cut[i + 1] = min(min_cut[i + 1], min_cut[j] + 1);
}
}
}
return min_cut[size];
}
阅读全文