E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
算法设计与分析
算法设计与分析
总结(算法+题目+解析)
前言本博客对以下6种经典算法及相关问题进行一个集合汇总。包含各种算法的基本思想、问题的思考思路,以及代码实现(C++)。穷举法百鸡问题递归和分治二分查找合并排序快速排序循环赛日程表动态规划最长公共子序列0-1背包问题贪心算法活动安排问题哈夫曼编码单源最短路径最小生成树背包问题贪心算法总结回溯法装载问题0-1背包问题旅行售货员问题n皇后问题分支限界法简单介绍最后学习算法需要知道的事情:时间复杂度大小
长浔
·
2020-01-09 00:14
C++
数据结构
算法
算法设计与分析
(第2版)屈婉玲 刘田 张立昂 王捍贫编著 第四章课后习题答案
算法设计与分析
(第2版)屈婉玲刘田张立昂王捍贫编著第四章课后习题答案ps:这是我有的最后一章答案了
@Summer
·
2020-01-07 18:09
算法
算法设计与分析
6.5 汽车维修
★题目描述有N位客户的汽车等待维修,现在M个维修员,每个维修员修理每台汽车的时间不同,请安排每个维修员需要维修的车与维修顺序,使得所有客户总等待时间最少。★输入格式输入的第一行两个数字M,N(1usingnamespacestd;intM,N;intT[20+5][20+5];structEdge{intto,next,flow,dis;//flow流量dis花费}E[10000];//保存的数据
yejifeng
·
2019-12-28 23:00
二分入门之芯片检测
刚学
算法设计与分析
,入门二分,便拿课本题目练练手。
Chasiny
·
2019-12-28 11:39
我在河科大的第二年(下)
(4学分——考试)——有课程设计(2学分)3>Java/.net程序设计(3学分——上机考试)——有课程设计(2学分)4>Oracle/SQLServer数据库管理(考试)——有课程设计(1学分)5>
算法设计与分析
西小兜
·
2019-12-26 22:03
〔两行哥〕算法时间与空间复杂度及数学基础准备(序)
请记住,基本的
算法设计与分析
,是高级程序员必备技能。本文分为两个部分,一部分带大家理解算法中衡量算法优劣最基础的两个概念:时间复杂度和空间复杂度,另外一部分为大家介绍数学基础复习大纲。
两行哥
·
2019-12-26 02:27
算法设计与分析
6.4 费用网络
★题目描述有一个N个点M条边的有向无环图,每条边有容量和其单位容量的花费请求出从起点1到终点N的最大流量及其最小花费★输入格式输入的第一行两个数字N,M(10则称P为关于可行流f的一条增广路.残余网络:在一个网络流图上,找到一条源到汇的路径后,对该条路径上所有的边,其容量都减去此次找到的量,对路径上所有的边,都添加一条反向边,其容量等于此次找到的最小流量,这样得到的新图,就称为原图的“残余网络”费
yejifeng
·
2019-12-25 16:00
算法设计与分析
6.3 棋盘取子
★题目描述有一个N行M列的棋盘,上面摆放有K个棋子,现在想要尽可能的从棋盘上取下这些棋子但是棋盘的每行每列至多允许取一个棋子,请问最多能取多少棋子?★输入格式输入的第一行三个数字N,M,K(1usingnamespacestd;intMatch[501];intVisit[501];intH[501];structEdge{intend,nxt;}E[100001];intidx=0;voidAd
yejifeng
·
2019-12-25 16:00
算法设计与分析
6.2 路径覆盖
★题目描述有向无环图上一条简单路径V0->V1->...->Vl(V0可能等于Vl)覆盖了这条路径上的所有节点。请找出一个简单路径的集合,使得每个节点恰好被覆盖一次,输出路径的最少条数。★输入格式输入的第一行两个数字n,m(14->7->10->11),(2->5->8),(3->6->9)。★参考代码/*也是一道二分图最大匹配的题题目所问的最少的路径数=节点数n-最大匹配数*/#includeu
yejifeng
·
2019-12-25 16:00
算法设计与分析
6.1 结对编程
★题目描述现在有n个代码手和m个观察者,只有相互熟悉的代码手和观察者才能进行良好的结对编程。请问怎样搭配可以有最多的结对编程组合★输入格式输入的第一行三个数字n,m和k(1usingnamespacestd;intMatch[100+5];//记录的是B子集(观察者)是否已经匹配了intVisit[100+5];//记录的是B子集(观察者)是否已经问过了intH[100+5];//记录的是A子集(
yejifeng
·
2019-12-25 16:00
算法设计与分析
- 李春葆 - 第二版 - pdf->word v3
11.1第1章─概论231.1.1练习题41.下列关于算法的说法中正确的有()。5Ⅰ.求解某一类问题的算法是唯一的6Ⅱ.算法必须在有限步操作之后停止7Ⅲ.算法的每一步操作必须是明确的,不能有歧义或含义模糊8Ⅳ.算法执行后一定产生确定的结果9A.1个B.2个C.3个D.4个102.T(n)表示当输入规模为n时的算法效率,以下算法效率最优的是()。11A.T(n)=T(n-1)+1,T(1)=1B.T
ggjong
·
2019-12-23 17:00
算法设计与分析
- 李春葆 - 第二版 - html v2
1.1第1章─概论1.1.1练习题1.下列关于算法的说法中正确的有()。ⅠⅡⅢⅣ.求解某一类问题的算法是唯一的.算法必须在有限步操作之后停止.算法的每一步操作必须是明确的,不能有歧义或含义模糊.算法执行后一定产生确定的结果A.1个B.2个C.3个D.4个2.T(n)表示当输入规模为n时的算法效率,以下算法效率最优的是()。A.T(n)=T(n-1)+1,T(1)=1C.T(n)=T(n/2)+1,
ggjong
·
2019-12-23 17:00
算法设计与分析
- 李春葆 - 第二版 - pdf->word v1
11.1第1章─概论21.1.1练习题31.下列关于算法的说法中正确的有()。Ⅰ.求解某一类问题的算法是唯一的4Ⅱ.算法必须在有限步操作之后停止5Ⅲ.算法的每一步操作必须是明确的,不能有歧义或含义模糊Ⅳ.算法执行后一定产生确定的结果6A.1个B.2个C.3个D.4个72.T(n)表示当输入规模为n时的算法效率,以下算法效率最优的是()。8A.T(n)=T(n-1)+1,T(1)=1B.T(n)=2
ggjong
·
2019-12-23 17:00
算法设计与分析
- AC 代码 - 第 6 弹(重复第 3 弹)
1PTA-
算法设计与分析
27-1c++(g++)3#include4usingnamespacestd;5longmax3(longa,longb,longc)6{if(ac)returna;8elsereturnc
ggjong
·
2019-12-23 17:00
算法设计与分析
- AC 题目 - 第 5 弹(重复第 2 弹)
1PTA-
算法设计与分析
-AC原题27-1最大子列和问题(20分)3给定K个整数组成的序列{N1,N2,...,NK},“连续子列”被定义为{Ni,Ni+1,...,Nj},其中1≤i≤j≤K。
ggjong
·
2019-12-23 17:00
算法设计与分析
- 题型分析 - 第 4 弹(重复第 1 弹)
1PTA-
算法设计与分析
-AC分析2算法前提3时间、空间复杂度:4O(1)左最大值+mid->右最大值)n>13031算法如下32max(三个区间最大值a,b,c)33{34if(ac)returna;
ggjong
·
2019-12-23 16:00
算法设计与分析
- AC 代码 - 第 3 弹
PTA-
算法设计与分析
7-1c++(g++)#includeusingnamespacestd;longmax3(longa,longb,longc){if(ac)returna;elsereturnc
ggjong
·
2019-12-23 16:00
算法设计与分析
- AC 题目 - 第 2 弹
PTA-
算法设计与分析
-AC原题7-1最大子列和问题(20分)给定K个整数组成的序列{N1,N2,...,NK},“连续子列”被定义为{Ni,Ni+1,...,Nj},其中1≤i≤j≤K。
ggjong
·
2019-12-23 16:00
算法设计与分析
- 题型分析 - 第 1 弹
算法前提时间、空间复杂度:O(1)左最大值+mid->右最大值)n>1算法如下max(三个区间最大值a,b,c){if(ac)returna;elsereturnc;}//递归求每一组最大值//int求最大值(存序列的数组aa[],最左位数,最右位数){inti,j;int三个区间的最大值a,b,c;int第三个区间的暂存值temp;//初始化第三个区间的值为0//。。。if(左==右){if(a
ggjong
·
2019-12-23 16:00
算法设计与分析
5.5 真-白给题
★题目描述给定1-n的一个排列,要求你将它们重排,使得任意两个相邻的数的和为质数。★输入格式一个正整数n。nusingnamespacestd;intn;intres[21];intisPrime(intnum){if(num==2)returntrue;//2特殊处理if(num<2||num%2==0)returnfalse;//识别小于2的数和偶数for(inti=3;i*i<=num;i+
yejifeng
·
2019-12-22 20:00
算法设计与分析
5.4 蒂花之秀
★题目描述地图为一个N行M列的阵图,阵图里的各个结点可能是一个无法通过的障碍格,也可能是一个数字格。可以从阵图上的任意一个数字格出发,每次沿上下左右之一的方向走一格,但不能走到障碍格中,也不能重复经过一格数字格。将跑步起点的数字格到终点的数字格,途经的所有格上的数字按照访问顺序连接在一起得到一个整数,作为自己训练的评价指标。现在给你韩跳跳的训练地图,请问他在这张地图上能得到的最大评价指标是多少?★
yejifeng
·
2019-12-22 20:00
算法设计与分析
5.3 数字排列
★题目描述给两个正整数A和B,请问通过重新排列A获得小于或等于B的最大数字是多少(不含前导0)?★输入格式输入的第一行两个数字A和B,保证这两个数字在int范围内。★输出格式输出A重新排列后小于或等于B的最大整数(不含前导0),若不存在输出-1。★样例输入12343456★样例输出3421★提示无★参考代码/*全排列用prev_permutation函数实现*//*全排列用prev_permuta
yejifeng
·
2019-12-22 19:00
算法设计与分析
5.2 洪尼玛的围栏
★题目描述有n块长度不同的木板,他想用这些木板拼成一个等边三角形的围栏。现在,给你这n块木板的长度,洪尼玛想知道他能否拼成这个围栏?要求:n块木板都得用上。★输入格式第一行为一个正整数T,表示有T组测试数据。对于每组测试数据,第一行为一个正整数n,表示木板个数;第二行包含n个正整数,表示每块木板的长度。★输出格式如果能拼成围栏输出Yes,否则输出No。★样例输入24123441233★样例输出No
yejifeng
·
2019-12-22 15:00
算法设计与分析
5.1 合并果子
★题目描述GYY面前有N堆果子,分别有1,2,3,。。。。,N个果子,这N堆果子一开始按照某种顺序排列。GYY有一种独特的魔法,他每轮操作会依次把第i+1堆的果子复制一份加到第i堆上,最后舍弃掉最后一堆。N轮操作之后,就只剩下一堆果子了(废话)。然而当GYY忙活完这一切的时候,他发现他忘了自己一开始的N堆果子是怎么摆放的了,现在给你操作轮次数和最后那堆果子的数量,找到一个满足条件的初始排列如果有多
yejifeng
·
2019-12-22 15:00
算法设计与分析
4.5 洪尼玛与神秘信封
★题目描述一个仅由“o”、“x”和“*”组成的字符串,将“*”替换成“o”需要a的代价、替换成“x”需要b的代价。一个字符串合法需要满足以下两个条件:1.字符串所有前缀的“o”的个数必须不小于“x”的个数;2.字符串的“o”的个数必须等于“x”的个数;洪尼玛想知道将所有的“*”替换成“o”或“x”使得该字符串合法的最小代价是多少?如果无解输出-1。★输入格式第一行为一个字符串S,表示字符串;接下来
yejifeng
·
2019-12-22 01:00
算法设计与分析
4.4 洪尼玛与魔法卡
★题目描述洪尼玛有2n张魔法卡,每张魔法卡上都有两个正整数a、b。洪尼玛准备将这些魔法卡平均分成2堆,每堆有n张魔法卡。一堆魔法卡所能发挥的功力值为该堆魔法卡中最小的a值与最小的b值的乘积。洪尼玛有一种X能力,可以使某张魔法卡上的a、b值互换,并且可以无限次使用这个能力。洪尼玛想知道将这些魔法卡平均分成2堆后(可以使用X能力),这2堆魔法卡一共能发挥的最大功力值是多少?★输入格式接下来2n行,每行
yejifeng
·
2019-12-22 01:00
算法设计与分析
4.3 洪尼玛与芒果篮
★题目描述一共有n篮芒果,第i篮有ai个芒果。商家给出m个可以选择的区间li、ri,你需要从中选择k个区间,这k个区间的交集所对应位置上的芒果就可以以一块钱全部购得。洪尼玛刚好只剩一块钱,他想知道用这一块钱最多可以买多少个芒果?★输入格式第一行为三个正整数n、k、m,表示芒果篮数、需选择的区间个数和可以选择的总区间个数;第二行包含n个正整数,表示每篮的芒果个数;接下来m行,每行两个正整数li、ri
yejifeng
·
2019-12-21 00:00
算法设计与分析
4.2 洪尼玛与网络攻防战
★题目描述有n名黑客袭击了他公司的账户,第i名黑客每分钟可以从账户中盗取ci元,对付第i名黑客需要2*ti时间一旦洪尼玛对第i名黑客开始进行攻防,该黑客将无法继续盗取钱财,但其他未被攻防的黑客可以继续盗取钱财。这n名黑客从第0时刻开始进行袭击。洪尼玛想知道对付完这n名黑客后被盗取的金额最小是多少?★输入格式第一行为一个正整数n,表示黑客的数量;接下来n行,每行两个正整数ci、ti,表示第i名黑客;
yejifeng
·
2019-12-18 20:00
算法设计与分析
4.1 洪尼玛与巧克力工厂
★题目描述洪尼玛的巧克力工厂准备进行n天的生产,第i天生产1块巧克力的花费为ci元,第i天需要交付给客户ai块巧克力。洪尼玛有一个冰柜可以存放无限多块巧克力(保证巧克力不会坏掉),但是存放每块巧克力每天的花费为s元。洪尼玛想知道完成这n天所有订单的最小花费是多少?★输入格式第一行为两个正整数n、s,表示总天数和存储每块巧克力每天的花费;接下来n行,每行两个正整数ci、ai,表示第i天生产1块巧克力
yejifeng
·
2019-12-18 20:00
算法设计与分析
3.5 大尾巴狼
★题目描述本期活动中,共有N件商品参与促销。狼是一种很智慧的动物,店主提出了一个这样的促销方案:每件商品有折扣价Ci和原价Vi。如果购物车内所有商品的原价和恰好是折扣价的K倍,那么直接免单!你想知道在能够免单的情况下,最多免费拿走原价总价值和多少的商品。★输入格式第一行包括两个正整数N,K,表示共有N件商品,指定的常数为K。接下来的一行包括N个正整数,第i个正整数表示第i个物品的原价。接下来的一行
yejifeng
·
2019-12-18 19:00
算法设计与分析
3.4 小鲨鱼
★题目描述本期活动中,共有N件商品参与促销,你身上带了M块钱。这N种物品每种物品有价格Ci和原价Vi,以及限购Ki件。你想知道你最多能够买走原价总和多少的商品。★输入格式第一行包括两个正整数N,M,表示共有N件商品,你有M块钱。接下来的N行,每i行包括三个自然数Ci,Vi,Ki。表示第i件商品的价格、原价和限购数量。★输出格式输出仅包括一个正整数,表示你能买走的最大原价总和。★样例输入282100
yejifeng
·
2019-12-18 16:00
算法设计与分析
3.3 眯眯眼天使
★题目描述共有N种商品参与促销。每种物品有价格Ci和原价Vi,以及限购数量Ki。店主会在活动当天宣布有一种商品退出促销,无法购买。为了获取最大利益,你准备提前计算好Q种情况。即在给定携带资金Xi,和无法购买第Yi种物品的情况下,最多能够买走原价总和是多少。特别提醒,商品论件出售,不允许拆分。★输入格式第一行包括一个正整数N,表示共有N件商品。接下来的N行,每行包括三个自然数Ci,Vi,Ki。表示第
yejifeng
·
2019-12-18 16:00
算法设计与分析
3.2 小绵羊
★题目描述本期活动中,共有N件商品参与促销。顾客可以直接选择M件拿走。但是,拿走商品有一定的限制,某些商品不能被直接拿走,如果想要拿走他,必须要先拿走他指定的另一件特定商品。请你计算一下,最多能够拿走总价值为多少的商品。★输入格式第一行包括两个正整数N,M,表示共有N件商品,你可以拿走M件。接下来的N行,每i行包括两个自然数Ai,Bi。若A=0,则表示该商品能直接拿走,若A!=0,则代表你需要先拿
yejifeng
·
2019-12-17 23:00
算法设计与分析
3.1 小火龙
★题目描述共有N种商品会进行打折,第i种商品打折后的价格为Ci,原价为Vi,从第Ti天开始出售,每种商品限购一件。如果顾客来的时间早于第Ti天,就无法购买到这件商品。现在你想知道,倘若你只在第X天带了Y块钱去一次超市,最多可以购买到原价总和为多少的商品。★输入格式第一行包括两个正整数N,M,表示有N种商品进行促销,有M个购物询问。接下来的N行,每行包括三个正整数Ci,Vi,Ti,分别表示每种商品的
yejifeng
·
2019-12-17 22:00
算法设计与分析
2.5 Joyvan的难题
★题目描述Joyvan最近遇到了一个难题,对于一个包含N个整数的序列a1,a2,……,aN,定义:f(i,j)=(j-i)2+(j∑k=i+1ak)2现在Joyvan想要你帮他计算所有f(i,j)(1#defineSQUARE(x)((x)*(x))usingnamespacestd;intmain(){intn;cin>>n;longtotal=0;longsum[n+10];inttmp;fo
yejifeng
·
2019-12-17 11:00
[
算法设计与分析
]符号三角形问题 解题报告
Problem输入:n(1usingnamespacestd;intn,half,res;char**str;intsum;voidBacktrace(intt){inti,j;if(t>n)sum++;else{for(i=0;i<2;++i){res+=i;str[1][t]=i;for(j=2;j<=t;++j){str[j][t-j+1]=str[j-1][t-j+1]^str[j-1][
vouv
·
2019-12-16 11:38
算法设计与分析
2.4 白给题
★题目描述给定N个自然数,你需要选择M个,使得M个数中两两之间的差的绝对值的最小值尽可能大,求这个最大值。★输入格式第一行两个空格隔开的正整数N,M,表示自然数个数和要选的数的个数。接下来一行为N个空格隔开的给定自然数。★输出格式一个整数。★样例输入32123★样例输出2★参考代码思路参考自共享文件/*先对数列进行排序设置一个变量间隔res设置这个间隔res从(max-min)/m开始减小到为1一
yejifeng
·
2019-12-15 15:00
算法设计与分析
2.3 01序列
★题目描述给定一个序列,刚开始只有一个数N。序列里大于1的数X会进行分裂,即在序列中删除X,并在原来X的位置插入下取整X/2,Xmod2,下取整X/2三个数,直到序列中只有0和1。问最后序列中第L个数到第R个数之间有多少个1。★输入格式数据保证R不大于最后序列的长度。★输出格式一个整数,最后序列中第L个数到第R个数之间有多少个1。★样例输入436★样例输出2★提示样例中,序列变化如下:4→202→
yejifeng
·
2019-12-15 15:00
算法设计与分析
2.2 画三角形
★题目描述编程画出规模为N的三角形。规模为1的三角形如样例所示。规模为X的三角形为三个规模为X-1的三角形拼接而成,如样例所示。★输入格式一个整数N,表示三角形的规模。对于100%的数据,1#includeusingnamespacestd;stringsj[1024]={"/\\","/__\\"};voiddfs(intn){intstep=(1=step;--i){sj[i]=sj[i-st
yejifeng
·
2019-12-15 15:00
算法设计与分析
2.1 杰哥和序列
★题目描述杰哥喜欢单调不下降的序列,因为他觉得这样的序列有美感。今天杰哥得到了一个长度为N的序列D,但是他今天心情不好,他把序列丢给了你,要你把他变成单调不下降的序列。你可以花费A单位的时间交换序列中两个相邻的元素,当然,你也可以选择干一半摸鱼罢工。最后你要把序列还给杰哥,但是如果杰哥发现序列中每有一个逆序对,就会把你抓过去,训话B单位时间。你想花最少的时间(主动交换元素+被动被杰哥训话的时间)把
yejifeng
·
2019-12-15 15:00
算法设计与分析
1.4 区间
★题目描述有N个区间,第i个区间的端点是li和ri,即第i个区间覆盖了[li,ri]是否存在一个编号最小的区间包含所有的区间。如果存在,则输出区间编号,否则输出"-1".区间包含指的是,假设一个区间[a,b]包含另外一个区间[c,d],需要满足ausingnamespacestd;intmain(){intn;cin>>n;intl,r,minL,maxR;scanf("%d%d",&minL,&
yejifeng
·
2019-12-15 15:00
算法设计与分析
1.3 杰哥和数字
★题目描述杰哥特别喜欢和数字打交道,现在他有一个正整数X,他想知道有多少个满足要求的正整数D存在,要求是D是X的因子,并且D和X至少有一位相同。★输入格式只有一行,一个正整数X。对于30%的数据,Xintbook[10]={0};intisbaohan(inta){while(a!=0){if(book[a%10])return1;a=a/10;}return0;}intmain(){intX;s
yejifeng
·
2019-12-15 15:00
算法设计与分析
1.2 不一样的fibonacci数列
★题目描述fibonacci数列的递推公式是F(n)=F(n-1)+F(n-2)(n>=2且n为整数)。将这个递推式改为F(n)=aF(n-1)+bF(n-2)(n>=2且n为整数)时得到的是怎样的数列。注意,这里我们依然令F(0)=F(1)=1。★输入格式输入第一行三个正整数q,a,b。接下来有q行,每行一个自然数n。对于50%的数据,1usingnamespacestd;intq,a,b;co
yejifeng
·
2019-12-15 15:00
算法设计与分析
1.1 Joyvan的矩阵
★题目描述Joyvan有一个大小为n*m的矩阵,现在他要对矩阵进行q次操作,操作分为如下三种:0xy:交换矩阵的x、y两行。1xy:交换矩阵的x、y两列。2xy:求当前矩阵第x行第y列的元素。★输入格式第一行三个正整数n、m、q,表示矩阵大小和操作次数。接下来n行,每行m个空格隔开的整数,表示矩阵的元素。接下来q行,每行三个数op、x、y,表示上述操作中的一种。对于80%的数据,1usingnam
yejifeng
·
2019-12-15 15:00
算法设计与分析
1.5 我想静静
★题目描述众所周知,静静是FFF团的荣誉团长。每当单身狗孤独寂寞冷的时候,只要说一句“对不起,我想静静。”便能短暂的告别这冷酷的世界,获得片刻心灵的慰藉。但是,火把节的前夕,众团员正摩拳擦掌准备大烧一场时,静静竟然被情侣们包围了!!身为FFF团35级火系魔法师的你已经坐不住了,现在就准备出发去拯救静静!每对情侣(两个人)有一个编号(保证每对情侣的编号不重复),给静静一个单独的编号。现在,你的任务就
yejifeng
·
2019-12-15 15:00
算法设计与分析
练习题1
1.简述数据结构与算法的关系答:数据结构是算法的基础,算法的操作对象是数据结构,在设计算法时,需要构造适合该算法的数据结构。数据结构关注的是数据的逻辑结构、存储结构以及基本操作。而算法关注的是如何在数据结构的基础上解决实际问题。2.什么是算法?算法的特征有哪些?答:算法是求解问题的一系列计算步骤,用来将输入数据装换成输出结果。算法具有的五个特征:有限性、确定性、可行性、输入性和输出性。3.证明以下
侠客小飞
·
2019-12-14 22:00
7-13 最优合并问题
题目来源:王晓东《
算法设计与分析
》给定k个排好序的序列,用2路合并算法将这k个序列合并成一个序列。假设所采用的2路合并算法合并2个长度分别为m和n的序列需要m+n-1次比较。
邢兵
·
2019-12-13 23:00
『嗨威说』
算法设计与分析
- 回溯法思想小结(USACO-cha1-sec1.5 Checker Challenge 八皇后升级版)
本文索引目录:一、回溯算法的基本思想以及个人理解二、“子集和”问题的解空间结构和约束函数三、一道经典回溯法题点拨升华回溯法思想四、结对编程情况一、回溯算法的基本思想以及个人理解:1.1基本概念:回溯法思路的简单描述是:把问题的解空间转化成了图或者树的结构表示,然后使用深度优先搜索策略进行遍历,遍历的过程中记录和寻找所有可行解或者最优解。1.2使用条件:当问题是要求满足某种性质(约束条件)的所有解或
嗨威er
·
2019-12-12 17:00
算法设计与分析
——算法复杂性分析
这篇博客的内容摘自课本,针对课本中缺少的5道证明题,作为练习,给出证明。算法运行时所需要的计算机时间资源的量称为时间复杂性。这个量应该集中反应算法的效率,并从运行该算法的实际计算机中抽象出来。换句话说,这个量应该是只依赖于要解的问题的规模、算法的输入和算法本身的函数。 如果分别用N,I和A表示算法要解的问题的规模、算法的输入和算法本身,而且用T表示时间复杂性,那么,应该有T=T(N,I,A)。通
王陸
·
2019-12-10 11:00
算法设计与分析
——回溯法算法模板
在《
算法设计与分析
课本》中介绍了11个回溯法的问题样例,这里根据解空间树的类型做一个分类。
王陸
·
2019-12-09 20:00
上一页
16
17
18
19
20
21
22
23
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他