
【算法设计与分析实验报告 程序实现】
文章平均质量分 94
C++实现的算法设计与分析问题与程序代码
天喜Studio
6月份城市(哈尔滨)之星TOP2、C/C++领域新星创作者。
展开
-
【算法设计】贪心算法设计——均分纸牌、线段覆盖问题(C++实现)
有N堆纸牌,编号分别为1,2,…,n。每堆上有若干张,但纸牌总数必为n的倍数。可以在任一堆上取若干张纸牌,然后移动在一维空间中存在N条线段,每条线段的起始坐标与终止坐标已知,要求求出这些线段一共覆盖了多大的长度。L1 L2 L3 L4 L5 L6 L7 L8 L9 移牌的规则为:在编号为1上取的纸牌,只能移到编号为2的堆上;在编号为n的堆上取的纸牌,只能移到编号为n-1的堆上;其他堆上取的纸牌,可以移到相邻左边或右边的堆上。现在要求找出一种移动方法,用最少的移动次数使每堆上纸牌数都一样多。原创 2023-10-26 17:31:27 · 1339 阅读 · 0 评论 -
【算法设计】动态规划算法设计——天平平衡、数塔问题(C++实现)
天平平衡:已知一个天平左右两端共有n个挂钩,且有m个不同质量的钩码,求将钩码全部挂到钩子上使天平平衡的方法的总数。试设计求解该问题的动态规划算法。数塔问题问题描述对于诸如下图的数塔,若从顶层走到底层,每一步只能走到相邻的结点,求经过的结点的数字之和最大的路径,试设计求解该问题的动态规划算法。算法思想和解题思路m个钩码要么挂在左边,要么挂在右边,使得左右平衡,也就是说使得左右两边的钩码重量之和相等左边或者右边的钩码重量之和是全部钩码重量之后的二分之一,天平的两端的重量和为m从给定的数字数组中选择原创 2023-10-25 15:30:39 · 1390 阅读 · 0 评论 -
【算法设计】递归与分治算法设计——二分搜索、假币识别问题(C++实现)
算法分析与设计——二分搜索和假币识别问题:设a[0:n-1]是已排好序的数组。试改写二分搜索算法,使得当搜索元素x不在数组a中时,返回小于的最大元素的位置i和大于x的最小元素的位置j当搜索元素x在数组a中时,返回x在数组中的位置,此时i和j相同。一个袋子里有n个硬币,其中一枚是假币,假币和真币外观一模一样,仅凭肉眼无法区分,但是已知假币比真币轻一些。试设计识别假币的分治算法算法思想和解题思路先将有序数组分成两部分,中间位置mid为基准值若该值等于目标值key,则直接返回若该值大于目标值,则在左半部原创 2023-10-23 17:26:58 · 854 阅读 · 0 评论