
算法
NobiGo
这个作者很懒,什么都没留下…
展开
-
动态规划入门<三>
第三节 动态规划的思考角度那么什么是动态规划呢?我个人觉得,如果一个解决问题的方法满足上面六个思考点中的前四个,那么这个方法就属于动态规划。而在思考动态规划方法时,后两点同样也是需要考虑的。面对问题要寻找动态规划的方法,首先要清楚一点,动态规划不是算法,它是一种方法,它是在一件事情发生的过程中寻找最优值的方法,因此,我们需要对这件事情所发生的过程进行考虑。而通常我们从过程的最后一步开始考虑,而不是先转载 2016-10-21 20:03:49 · 270 阅读 · 0 评论 -
动态规划入门<一>
通过金矿模型介绍动态规划第一节 初识动态规划经典的01背包问题是这样的:有一个包和n个物品,包的容量为m,每个物品都有各自的体积和价值,问当从这n个物品中选择多个物品放在包里而物品体积总数不超过包的容量m时,能够得到的最大价值是多少?[对于每个物品不可以取多次,最多只能取一次,之所以叫做01背包,0表示不取,1表示取]为了用一种生动又更形象的方式来讲解此题,我把此题用另一种方式来描述,如下:有一个国转载 2016-10-20 15:51:30 · 336 阅读 · 0 评论 -
动态规划入门<二>
通过金矿模型介绍动态规划第二节 动态规划的优点想必大家已经了解动态规划为什么是正确的方法,但是为什么要使用动态规划呢?请先继续欣赏这个故事:国王得知他的两个手下使用了和他相同的方法去解决交代给他们的问题后,不但没有认为他的两个大臣在偷懒,反而很高兴,因为他知道,他的大臣必然会找更多的人一起解决这个问题,而更多的人会找更更多的人,这样他这个聪明的方法就会在不经意间流传开来,而全国人民都会知道这个聪明的转载 2016-10-20 21:58:01 · 266 阅读 · 0 评论 -
网易2018校招内推编程题集合
彩色的砖块小易有一些彩色的砖块。每种颜色由一个大写字母表示。各个颜色砖块看起来都完全一样。现在有一个给定的字符串s,s中每个字符代表小易的某个砖块的颜色。小易想把他所有的砖块排成一行。如果最多存在一对不同颜色的相邻砖块,那么这行砖块就很漂亮的。请你帮助小易计算有多少种方式将他所有砖块排成漂亮的一行。(如果两种方式所对应的砖块颜色序列是相同的,那么认为这两种方式是一样的。) 例如: s = “ABA原创 2017-08-17 09:01:47 · 1221 阅读 · 1 评论 -
017年校招全国统一模拟笔试(第四场)编程题集合
庆祝61牛家庄幼儿园为庆祝61儿童节举办庆祝活动,庆祝活动中有一个节目是小朋友们围成一个圆圈跳舞。牛老师挑选出n个小朋友参与跳舞节目,已知每个小朋友的身高h_i。为了让舞蹈看起来和谐,牛老师需要让跳舞的圆圈队形中相邻小朋友的身高差的最大值最小,牛老师犯了难,希望你能帮帮他。 如样例所示: 当圆圈队伍按照100,98,103,105顺时针排列的时候最大身高差为5,其他排列不会得到更优的解 输入描述原创 2017-08-22 15:41:33 · 301 阅读 · 0 评论 -
017年校招全国统一模拟笔试(第三场)编程题集合
变换次数牛牛想对一个数做若干次变换,直到这个数只剩下一位数字。 变换的规则是:将这个数变成 所有位数上的数字的乘积。比如285经过一次变换后转化成2*8*5=80. 问题是,要做多少次变换,使得这个数变成个位数。 输入描述:输入一个整数。小于等于2,000,000,000。输出描述:输出一个整数,表示变换次数。输入例子1:285输出例子1:2结果您的代码已保存 答案正确:恭喜!您提交的程序通过了原创 2017-08-22 21:44:56 · 389 阅读 · 0 评论 -
多种排序总结
8种排序之间的关系选择排序原理(1)基本思想在要排序的一组数中,选出最小的一个数与第一个位置的数交换; 然后在剩下的数当中再找最小的与第二个位置的数交换,如此循环到倒数第二个数和最后一个数比较为止。(2)实例实现public class Sort { public static void main(String[] args) { int [] value = {12,34原创 2017-08-24 14:55:30 · 372 阅读 · 0 评论