![](https://img-blog.csdnimg.cn/20190918140145169.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
#递归
刷题
偶尔写博客
偶尔记录下自己的学习情况,我很菜。
展开
-
相同的树(dfs)
给定两个二叉树,编写一个函数来检验它们是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。示例 1:输入: 1 1 / \ / \ 2 3 2 3 [1,2,3], [1,2,3]输出: true示例 2:输入: 1 1 / \ 2 2...原创 2020-08-07 10:46:37 · 148 阅读 · 0 评论 -
将有序数组转换为二叉搜索树(二分+递归)
将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。示例:给定有序数组: [-10,-3,0,5,9],一个可能的答案是:[0,-3,9,-10,null,5],它可以表示下面这个高度平衡二叉搜索树: 0 / \ -3 9 / /-10 5来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems...原创 2020-07-03 13:28:49 · 142 阅读 · 0 评论 -
最接近的三数之和(回溯)
给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。示例:输入:nums = [-1,2,1,-4], target = 1输出:2解释:与 target 最接近的和是 2 (-1 + 2 + 1 = 2) 。提示: 3 <= nums.length <= 10^3 -10^3 <= nums[i] <= ...原创 2020-06-24 22:45:37 · 270 阅读 · 0 评论 -
LETTERS(回溯深搜)
描述给出一个roe×col的大写字母矩阵,一开始的位置为左上角,你可以向上下左右四个方向移动,并且不能移向曾经经过的字母。问最多可以经过几个字母。格式输入格式第一行,输入字母矩阵行数R和列数S,1≤R,S≤20。 接着输出R行S列字母矩阵。输出格式最多能走过的不同字母的个数。样例输入样例3 6HFDFFBAJHGDHDGAGEH输出样例6限...原创 2020-03-22 01:41:15 · 282 阅读 · 0 评论 -
黑白棋子的移动(分治递归)
描述有n个棋子(n≥4)排成一行,开始位置为白子全部在左边,黑子全部在右边,如下图为n=5的情形:○○○○○●●●●●移动棋子的规则是:每次必须同时移动相邻的两个棋子,颜色不限,可以左移也可以右移到空位上去,但不能调换两个棋子的左右位置。每次移动必须跳过若干个棋子(不能平移),要求最后能移成黑白相间的一行棋子。如n=5时,成为:○●○●○●○●○●任务:编程打印出移动过程。格式...原创 2020-03-18 19:44:47 · 2946 阅读 · 0 评论 -
倒序数(递归)
描述输入一个非负整数,输出这个数的倒序数。例如输入123,输出321。格式输入格式输入一个非负整数(保证个位不为零)。输出格式输出倒序的数。样例输入样例123输出样例321#include <iostream>#include <queue>#include <string.h>#include <...原创 2020-03-16 18:24:29 · 4486 阅读 · 0 评论 -
转进制(递归)
描述用递归算法将一个十进制数X转换成任意进制数M(M≤16)。格式输入格式一行两个数,第一个十进制数X,第二个为进制M。输出格式输出结果。样例输入样例31 16 {将十进制31转化为十六进制数}输出样例1F限制时间限制: 1000 ms内存限制: 65536 KB#include <iostream>#include ...原创 2020-03-16 18:18:59 · 3045 阅读 · 0 评论 -
取余运算(分治)
描述输入b,p,k的值,求b^p mod k的值。其中b,p,k×k为长整型数。格式输入格式输入b,p,k的值。输出格式求b^p mod k的值。样例输入样例2 10 9输出样例2^10 mod 9=7限制时间限制: 1000 ms内存限制: 65536 KB一点自己关于使用分治算法的小见解:1.如果题目中有一个范围,则使用二分...原创 2020-03-08 01:41:46 · 956 阅读 · 0 评论 -
集合的划分ac(递归)
描述设S是一个具有n个元素的集合,S=〈a1,a2,……,an〉,现将S划分成k个满足下列条件的子集合S1,S2,……,Sk且满足:1.Si≠∅2.Si∩Sj=∅ (1≤i,j≤k,i≠j)3.S1∪S2∪S3∪…∪Sk=S则称S1,S2,……,Sk是集合S的一个划分。它相当于把S集合中的n个元素a1,a2,……,an放入k个(0 < k ≤ n < 30)无标号的盒子中,...原创 2020-03-04 00:39:26 · 808 阅读 · 0 评论 -
汉诺塔问题(递归OJ)
描述约19世纪末,在欧州的商店中出售一种智力玩具,在一块铜板上有三根杆,最左边的杆上自上而下、由小到大顺序串着由64个圆盘构成的塔。目的是将最左边杆上的盘全部移到中间的杆上,条件是一次只能移动一个盘,且不允许大盘放在小盘的上面。这是一个著名的问题,几乎所有的教材上都有这个问题。由于条件是一次只能移动一个盘,且不允许大盘放在小盘上面,所以64个盘的移动次数是:18,446,744,073,7...原创 2020-03-03 16:00:29 · 498 阅读 · 0 评论 -
求f(x,n)(递归)
描述已知用递归函数求解。格式输入格式第一数是x的值,第二个数是n的值。输出格式函数值,保留两位小数。样例输入样例1 2输出样例0.40限制时间限制: 1000 ms内存限制: 65536 KB注意:int转为double#include <iostream>#include <math.h>#...原创 2020-03-03 01:15:23 · 1797 阅读 · 0 评论 -
招商银行信用卡中心笔试题 寻找合法字符串
/* * 牛客链接:https://www.nowcoder.com/questionTerminal/3690a506d0374981863ca649d97b81b7?orderByHotValue=1&page=1&onlyReference=false * */import java.util.ArrayList;import java.util.Scanne...原创 2018-09-19 11:29:28 · 465 阅读 · 0 评论