- 博客(4)
- 收藏
- 关注
原创 算法设计与分析第五章作业
在回溯算法中,限界函数是一种非常重要的工具,它可以帮助我们在遍历解空间树的过程中剪去那些不可能产生最优解的分支。在遍历解空间树的过程中,每个节点的状态值应该是该节点代表的机器组合的总重量。对于最小重量机器设计问题,限界函数可能基于一些启发式规则来估计当前组合的最小可能重量,例如:每种机器的最小可能重量、最大可能重量以及它们之间的平均值等。总的来说,回溯法是一种非常有效的求解组合优化问题的算法,它不仅可以帮助我们找到问题的所有解,还可以在面对大规模问题时保持较高的效率。
2023-12-05 19:16:18
24
原创 第三章动态规划法作业
这个方程表示从第i堆石子到第j堆石子的最小代价等于从第i堆石子到第k堆石子的最小代价加上从第k+1堆石子到第j堆石子的最小代价,其中k的范围是i到j-1。例如有 4堆石子分别为 1 3 5 2, 我们可以先合并 1、2 堆,代价为 4,得到 4 5 2, 又合并 1,2 堆,代价为 9,得到 9 2 ,再合并得到 11,总代价为 4+9+11=24;dp[i][j] = min(dp[i][j], dp[i][k] + dp[k+1][j] + sum[i][j]),其中 i <= k < j。
2023-11-04 13:24:12
34
原创 算法设计分析第二章作业
它可以将一个复杂的问题分解为若干个较小的子问题,然后分别解决这些子问题,最终合并这些子问题的解以得到原问题的解。最大子段和问题就是一个很好的分治法的例子,它可以将一个数组分解为两个较小的数组,然后分别求解它们的最大子段和,最终通过比较两个子数组的最大子段和来得到整个数组的最大子段和。将数组不断递归地分为两段的时间复杂度为O(logn),用两个for循环求sum的时间复杂度又是O(n),所以用分治法求最大字段和的时间复杂度T(n)=O(n*logn)。分析该算法的时间复杂度O(nlogn)
2023-11-04 13:03:28
28
原创 代码规范及《数学之美》读后感
这套编码规范是编程过程中的重要指南,它有助于编写出高质量的代码,使得代码更易于阅读、理解和维护。2. 代码简洁性和模块化:避免冗余的代码和不必要的复杂性,尽可能地将复杂的函数或类分解为更小、更易于管理和测试的单元。这一章节让我对自然语言处理有了新的认识,也让我对学习有了新的理解。3. 注释:代码中添加详细的注释,澄清代码的功能,解释关键的实现细节,以及对于复杂算法的操作方式和目的进行阐述。总的来说,这一章节给我留下了深刻的印象,它让我对自然语言处理有了更深的理解,也让我对数学的美有了更深的感受。
2023-09-29 15:15:29
50
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人