递归
文章平均质量分 75
striner
这个作者很懒,什么都没留下…
展开
-
经典算法之全排列(详集)
我总结了全排列的各种题解,若有不全之处还请各位大大们慷慨指出.1. 全排列之取球游戏问题描述: m球中取n个球,共有多少种取法解题思路: 用递归思想解题.乍眼一看貌似递归无下手之处,其实每一个球只有两种情况:要么取, 要么不取. 若用m表示球的个数,n表示需要取的球的总数,那么当前球取则return fun(m - 1, n - 1) ; 不取则原创 2018-03-25 21:34:05 · 783 阅读 · 1 评论 -
Wannafly挑战赛12之银行存款
Wannafly挑战赛12之银行存款 链接:https://www.nowcoder.com/acm/contest/79/A来源:牛客网银行存款时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 32768K,其他语言65536KSpecial Judge, 64bit IO Format: %lld题目描述银行的定期存款一般有1年期、2年期、3年期、5年期四种原创 2018-03-24 22:15:51 · 288 阅读 · 0 评论 -
经典算法之出栈情况的模拟
问题: 出栈顺序模拟 求1到n个数的进栈出栈顺序一共有多少种思路讲解: 此题采用递归思想, 用f(n,m)记录第i个数的进出栈情况.n用于表示等待进栈的数的个数,m为栈内已有的个数.将每一时刻分为有数进栈,没有数出栈或者没有数进栈有数出栈两种情况,采用f(n - 1, m + 1) + f(n, m - 1)递归,若n == 0则表示所有数已经进栈,那么出栈顺序只有原创 2018-03-25 09:54:42 · 694 阅读 · 0 评论 -
经典算法之算式符号问题
题目要求给定字符串数组a = {1, 2, 3, 4, 5, 6, 7, 8, 9} a中的每两个元素之间都可以"+", "-"或者什么都不写(表两个元素合起来是一个数如:12,123等)连接进行运算要求输出结果为110的所有组合方式这道题写起来不难,只要思路理清就一切ok. (ps: 用递归解题,别忘了回溯~)代码实现public class Main原创 2018-03-25 14:34:02 · 605 阅读 · 0 评论 -
经典算法之天秤称重问题
问题描述:已知所有砝码重量均为3的倍数,且所有重量的砝码有且只有一个要求输出1到n的所有物品的称重方式解题思路:物品重量砝码1123 - 1334 3 + 159 - 3 - 1......经过对比发现,若物品重量刚刚超过了较大砝码的一原创 2018-03-31 18:47:43 · 8526 阅读 · 0 评论 -
经典算法之分治法 求最大区间和
问题描述:数组中整数有正有负求一连续子段,使得和最大化例如:2,4,-7,5,2,-1,2,-4,3最大连续段:5,2,-1,2其最大和为8解题思路:制造递归条件,将数组分为两部分.将区间和分为三部分计算:第一部分:从begin开始计算[begin, index)第二部分:从end开始计算[index, end)第三部分:原创 2018-04-08 21:23:37 · 1562 阅读 · 0 评论 -
经典算法之博弈论 高僧斗法
问题描述:两高僧斗法.现有若干级台阶(表示N级浮屠).又有若干小和尚随机的站在某个台阶上.最高一级台阶必须站人,其他任意.两位参加游戏的法师分别指挥某个小和尚向上走任意多级的台阶,但会被站在高级台阶上的小和尚阻挡,不能越过.两个小和尚也不能站在同一台阶,也不能向低级台阶移动.两高僧轮流发出指令,最后所有小和尚必然都会挤在高段台阶上,再也不能向上移动.轮到哪个高僧指挥时无法移动,则游原创 2018-04-02 08:37:18 · 407 阅读 · 1 评论 -
经典算法之二分查找 找出刚好比x稍微大点的那个数
题目描述:已知有序的序列,比如:2,3,3,5,9,9,9,12,12,13,15,22,22,22,22,25,25,23,91,95有整数x,比如: x=23要求找到一个刚好比x稍微大一点的元素位置当数组较大的时候,需要二分查找加快速度。思路分析:典型的二分查找问题,定义一个尾指针end和一个头指针begin不断二分递归,当end-begin==1时原创 2018-04-04 21:02:13 · 1757 阅读 · 0 评论