在存储整数的顺序表中删除k个元素,确保删除后的元素之和最小,输出删除k个元素后的顺序表(表中值相同的元素连续排列,保持原顺序不变)删除出错输出error,成功删除输出删除k个元素后的顺序表元素,如表为空输出empty。
时间: 2024-05-31 10:07:20 浏览: 24
删除顺序表中的元素
3星 · 编辑精心推荐
算法思路:
- 首先判断表是否为空,如果为空,直接输出empty;
- 如果删除的元素个数k大于表中元素总数,输出error;
- 否则,按照动态规划的思路,定义dp[i][j]表示前i个元素删除j个的最小和,初始化dp[i][0]为前i个元素的和,然后递推dp[i][j]的值,最终得到dp[n][k]的值,其中n为元素总数;
- 根据dp[n][k]的值,倒推被删除的元素,输出删除后的顺序表。
时间复杂度:$O(nk)$
代码实现:
阅读全文