![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
W♛min
这个作者很懒,什么都没留下…
展开
-
回溯算法——N皇后问题
问题描述在n×n格的棋盘上放置彼此不受攻击的n个皇后。按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。n皇后问题等价于在n×n格的棋盘上放置n个皇后,任何两个皇后不放在同一行或同一列或同一斜线上。编程要求:找出一个n×n格的棋盘上放置n个皇后并使其不能互相攻击的所有方案。输入输出样例...原创 2020-05-06 21:36:52 · 530 阅读 · 0 评论 -
背包问题——贪心
问题描述给定一个载重量为M的背包,考虑n个物品,其中第i个物品的重量 ,价值wi (1≤i≤n),要求把物品装满背包,且使背包内的物品价值最大。有两类背包问题(根据物品是否可以分割),如果物品不可以分割,称为0—1背包问题(动态规划);如果物品可以分割,则称为背包问题(贪心算法)。算法分析计算背包问题的贪心算法#include<bits/stdc++.h>usin...原创 2020-05-06 20:23:05 · 366 阅读 · 0 评论 -
木棒加工问题
问题描述输入输入有多组测试例。输入数据的第一行是测试例的个数T。每个测试例两行:第一行是一个整数n(1≤n≤5000),表示有多少根木棒;第二行包括n×2个整数,表示l1,w1,l2,w2,l3,w3,…,ln,wn,其中li和wi表示第i根木棒的长度和重量。数据由一个或多个空格分隔。输出输出是以分钟为单位的最少准备时间,一行一个。算法分析本题仅仅使用贪心算法是不够的,排序...原创 2020-05-06 12:17:33 · 1138 阅读 · 0 评论 -
贪心算法
贪心算法的理论基础1.贪心算法是一种在每一步选择中都采取在当前状态下最好或最优的选择,希望得到结果是最好或最优的算法。2.贪心算法是一种能够得到某种度量意义下的最优解的分级处理方法,通过一系列的选择得到一个问题的解,而它所做的每一次选择都是当前状态下某种意义的最好选择。即希望通过问题的局部最优解求出整个问题的最优解。3.这种策略是一种很简洁的方法,对许多问题它能产生整体最优解,但不能保证总是...原创 2020-05-06 12:16:26 · 121 阅读 · 0 评论 -
实现0-1背包的动态规划算法
问题描述分析则建立计算p(i,j)的递归式如下:原创 2020-05-04 22:26:59 · 176 阅读 · 0 评论 -
最大子段和问题——动态规划
动态规划的基本思想设计动态规划的步骤动态规划问题的特征最大子段和问题描述计算最大子段和的动态规划算法原创 2020-05-04 21:12:11 · 261 阅读 · 0 评论 -
最大子段和问题——分治法
问题描述代码在这里插入代码片原创 2020-05-04 20:05:37 · 7735 阅读 · 2 评论 -
分治策略——输油管道问题
问题描述某石油公司计划建造一条由东向西的主输油管道。该管道要穿过一个有n口油井的油田。从每口油井都要有一条输油管道沿最短路经(或南或北)与主管道相连。如果给定n口油井的位置,即它们的x坐标(东西向)和y坐标(南北向),应如何确定主管道的最优位置,即使各油井到主管道之间的输油管道长度总和最小的位置?给定n口油井的位置,编程计算各油井到主管道之间的输油管道最小长度总和。输入第1行是一个整数...原创 2020-05-04 18:18:11 · 3984 阅读 · 1 评论 -
整数划分问题——递归
问题描述整数划分问题是算法中的一个经典命题之一。把一个正整数n表示成一系列正整数之和:正整数n的这种表示称为正整数n的划分。正整数n的不同划分个数称为正整数n的划分数,记作p(n)。正整数6有如下11种不同的划分,所以p(6)=1165+14+2, 4+1+13+3, 3+2+1, 3+1+1+12+2+2, 2+2+1+1, 2+1+1+1+11+1+1+1+1+1输入:6...原创 2020-05-03 16:20:05 · 1300 阅读 · 0 评论 -
数字三角形——递推算法
如下所示为一个数字三角形。请编一个程序计算从顶到底的某处的一条路径,使该路径所经过的数字总和最大。只要求输出总和。 1、 一步可沿左斜线向下或右斜线向下走; 2、 三角形行数小于等于100;3、 三角形中的数字为0,1,…,99;测试数据通过键盘逐行输入,如上例数据应以如下所示格式输入:573 88 1 02 7 4 44 5 2 6 5输出:30【算法分析...原创 2020-05-03 15:43:14 · 341 阅读 · 0 评论