数据结构与算法
zmingyang
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
整数拆分--动态规划法
题目: 将正整数n无序拆分成最大数为m的拆分方案个数,要求所有拆分方案不重复。 例如 n = 5, m = 5,对应的拆分方案如下: 5 = 5 5 = 4 + 1 5 = 3 + 2 5 = 3 + 1 + 1 5 = 2 + 2 + 1 5 = 2 + 1 + 1 + 1 5 = 1 + 1 + 1 + 1 + 1 思路: 由例题可知,顺序不影响结果,我们采用动态规划法来解决问题。建立数组dp[n+1][m+1].其中dp[i][j]指正整数i被拆分为最多j个数字的方案数。注意不是一定要拆为j个而是拆为原创 2020-07-01 10:48:26 · 2983 阅读 · 0 评论 -
收费公路重建问题--回溯算法 JAVA实现
问题描述: 设给定N个点p1,p2,…,pNp1,p2,…,pN位于x轴上,xixi为pipi的坐标,假设x1=0x1=0且这些点从左至右分布。则每一对点之间都对应一个距离|xi,xj|, (i≠j)|xi,xj|, (i≠j),共计有N(N-1)/2对点产生的距离。 收费公路重建问题是从这些距离重新构造出点集。 简单举例: 设D是距离的集合,并设D={1,2,2,2,3,3,3,3,4,5,5,5,6,7,8,10}。D包含15个元素,因此点集大小N=6。初始设x1=0,进而x6=10。 算法思路: 收费原创 2020-05-30 14:41:19 · 667 阅读 · 0 评论 -
分治算法--最近点问题java解法
问题描述: 最近对问题要求在包含有n个点的集合S中,找出距离最近的两个点。设 p1(x1,y1),p2(x2,y2),……,pn(xn,yn)是平面的n个点。 严格地将,最近点对可能不止一对,此例输出一对即可。原创 2020-05-16 11:11:17 · 1522 阅读 · 0 评论
分享