算法
IUDN
这个作者很懒,什么都没留下…
展开
-
动态规划_股票问题
文章目录1.题目详述2.解法一:暴力破解程序测试3.解法二:动态规划3.1程序测试3.2程序测试_优化版4.补充_股票问题分析方法4.1分析股票问题的共同点4.2穷举框架4.3状态转移框架4.4题目练习4.4.1买卖股票的最佳时机4.4.2买卖股票的最佳时机 II4.4.3买卖股票的最佳时机 III4.4.4买卖股票的最佳时机 IV4.4.5最佳买卖股票时机含冷冻期4.4.6买卖股票时机含手续费...转载 2020-03-15 22:39:45 · 217 阅读 · 0 评论 -
动态规划_上楼梯
文章目录1.题目详述2.思路解析分析迭代3.程序测试1.题目详述题目链接:上楼梯有个小孩正在上楼梯,楼梯有n阶台阶,小孩一次可以上1阶、2阶、3阶。请实现一个方法,计算小孩有多少种上楼的方式。为了防止溢出,请将结果Mod 1000000007 。给定一个正整数int n,请返回一个数,代表上楼的方式数。保证n小于等于100000。2.思路解析分析最后一步可能是从第n-1阶往上走1...原创 2020-03-13 16:59:34 · 265 阅读 · 0 评论 -
错排算法_年会抽奖
题目描述题目链接:年会抽奖思路解析解决途径:排错算法、递归具体分析这是一个不放回的排列组合问题。当n个编号元素放在n个编号位置,元素编号与位置编号各不对应的方法数用D(n)表示,那么D(n-1)就表示n-1个编号元素放在n-1个编号位置,各不对应的方法数,其它类推。第一步,把第n个元素放在一个位置,比如位置k,一共有n-1种方法;第二步,放编号为k的元素,这时有两种情况:把它放到位...原创 2020-03-07 23:34:19 · 233 阅读 · 0 评论 -
递归_找钱问题
问题描述:公园票价为5角。假设每位游客只持有两种币值的货币:5角、1元。再假设持有5角的有m人,持有1元的有n人。由于特殊情况,开始的时候,售票员没有零钱可找。我们想知道这m+n名游客以什么样的顺序购票则可以顺利完成购票过程。显然,m < n的时候,无论如何都不能完成;m>=n的时候,有些情况也不行。比如,第一个购票的乘客就持有1元。请计算出这m+n名游客所有可能顺利完成购票的不...原创 2020-02-09 18:49:35 · 427 阅读 · 0 评论 -
递归_算式填符号
问题描述:匪警请拨110,即使手机欠费也可拨通!为了保障社会秩序,保护人民群众生命财产安全,警察叔叔需要与罪犯斗智斗勇,因而需要经常性地进行体力训练和智力训练!某批警察叔叔正在进行智力训练:1 2 3 4 5 6 7 8 9 = 110请看上边的算式,为了使等式成立,需要在数字间填入加号或者减号(可以不填,但不能填入其它符号)。之间没有填入符号的数字组合成一个数,例如:12+34+56+...原创 2020-02-09 17:00:59 · 290 阅读 · 0 评论 -
递归_振兴中华
问题描述:小明参加了学校的趣味运动会,其中的一个项目是:跳格子。地上画着一些格子,每个格子里写一个字,如下所示:(也可参见下图)比赛时,先站在左上角的写着“从”字的格子里,可以横向或纵向跳到相邻的格子里,但不能跳到对角的格子或其它位置。一直要跳到“华”字结束。要求跳过的路线刚好构成“从我做起振兴中华”这句话。请你帮助小明算一算他一共有多少种可能的跳跃路线呢?分析:除了x=1或y=1...原创 2020-02-09 16:04:35 · 141 阅读 · 0 评论 -
递归_第39级台阶
问题描述:小明刚刚看完电影《第39级台阶》。离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!站在台阶前,他突然又想着一个问题:如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?请你利用计算机的优势,帮助小明寻找答案。分析:如果只有一级台阶,那么最后一步是左脚的话,方法一共是1种,就是直接...原创 2020-02-08 21:20:48 · 380 阅读 · 0 评论 -
递归_出栈次序
问题描述:X星球特别讲究秩序,所有道路都是单行线。一个甲壳虫车队,共16辆车,按照编号先后发车,夹在其它车流中,缓缓前行。路边有个死胡同,只能容一辆车通过,是临时的检查站,如图所示。X星球太死板,要求每辆路过的车必须进入检查站,也可能不检查就放行,也可能仔细检查。如果车辆进入检查站和离开的次序可以任意交错。那么,该车队再次上路后,可能的次序有多少种?思路:假设车队只有1辆车,可能次序1种...原创 2020-02-08 19:58:02 · 441 阅读 · 0 评论 -
递归_串的翻转
题目:字符串的翻转思路:递归假设翻转"abcde",相当于翻转"bcde"+“a”以此类推,递归下去代码:import java.util.Scanner;public class StringRotate { public static String rotate(String s){ if(s.length()<=1){ ...原创 2020-02-08 17:56:20 · 96 阅读 · 0 评论 -
暴力破解_九宫幻方
魔方可以对它的 6 个面自由旋转。我们来操作一个 2 阶魔方:为了描述方便,我们为它建立了坐标系。各个面的初始状态如下:x 轴正向:绿x 轴反向:蓝y 轴正向:红y 轴反向:橙z 轴正向:白z 轴反向:黄假设我们规定,只能对该魔方进行 3 种操作。分别标记为:x 表示在 x 轴正向做顺时针旋转y 表示在 y 轴正向做顺时针旋转z 表示在 z 轴正向做顺时针旋转xyz...原创 2020-02-07 19:53:12 · 197 阅读 · 0 评论 -
暴力破解_罗马数字逆向解法
题目:阿拉伯数字转换成罗马数字阿拉伯数字 <= 3000思路:枚举法分别计算出个位、十位、百位、千位——>转换成对应的罗马数字程序:public class ReverseRomanNum { // I --> 1 V --> 5 // X --> 10 L --> 50 // C --> 100 D...原创 2020-02-07 19:15:41 · 705 阅读 · 0 评论 -
暴力破解_罗马数字
真题:罗马数字古罗马帝国开创了辉煌的人类文明,但他们的数字表示法的确有些繁琐,尤其在示大数的时候,现在看起来简直不能忍受,所以在现代很少使用了。 之所以这样,不是因为发明表示法的人的智力的问题,而是因为一个宗教的原因,当时的宗教禁止在数字中出现 0 的概念! 罗马数字的表示主要依赖以下几个基本符号:I --> 1V --> 5X --> 10L --> 50C ...原创 2020-02-07 18:19:03 · 642 阅读 · 0 评论 -
暴力破解_年龄谜题
真题:年龄谜题美国数学家维纳(N.Wiener)智力早熟, 11 岁就上了大学。 他曾在 1935~1936 年应邀来中国清华大学讲学。 一次,他参加某个重要会议,年轻的脸孔引人注目。于是有人询问他的年龄,他回答说: “我年龄的立方是个 4 位数。我年龄的 4 次方是个6 位数。这 10 个数字正好包含了从 0 到 9 这 10 个数字,每个都恰好出现 1 次。 ”请你推算一下,他当时到底有多年...原创 2020-02-07 14:58:33 · 336 阅读 · 0 评论