
算法-java
文章平均质量分 80
卓尔货币
这个作者很懒,什么都没留下…
展开
-
LeetCode—111.二叉树的最小深度
更多精彩文章请访问我的个人博客(zhuoerhuobi.cn)给定一个二叉树,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7],返回它的最小深度2。思路灰常简单的一道题,BFS即可(没错,我就是水一篇博客)。不过解法中巧妙的一点是,由于节点的val值并没什么用,所以我拿来存储当前节点所在层数,巴适!Java实现import java.util.LinkedL.原创 2020-08-21 15:56:15 · 143 阅读 · 0 评论 -
LeetCode—51.N皇后
文章同步发布在我的个人博客(zhuoerhuobi.cn)n 皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。(上图为 8 皇后问题的一种解法。)给定一个整数 n,返回所有不同的 n 皇后问题的解决方案。每一种解法包含一个明确的 n 皇后问题的棋子放置方案,该方案中 ‘Q’ 和 ‘.’ 分别代表了皇后和空位。示例:输入: 4输出: [[".Q…", // 解法 1“…Q”,“Q…”,“…Q.”],["…Q.", // 解法 2.原创 2020-06-04 15:57:48 · 163 阅读 · 0 评论 -
[2016 NUIST 程序设计竞赛] A. 莱布尼兹的最值
描述莱布尼兹是德国哲学家、数学家,历史上少见的通才,被誉为十七世纪的亚里士多德。他和牛顿分别创立了微积分,而且在几何意义和符号记法上都要比牛顿高明。但是牛顿一直以皇家学会会长的身份打压势单力薄的莱布尼兹,欺骗世人。莱布尼兹含恨而死,但是历史最终还给了莱布尼兹一个清白,他说:“我穷尽我的一生的研究,包括我所创立的微积分都在研究一个问题,那就是最值。”所以,莱布尼兹留下的是一个关于最值的问题. 输入第原创 2017-10-22 18:25:50 · 708 阅读 · 1 评论 -
1005. 继续(3n+1)猜想 (25)
卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数。例如对n=3进行验证的时候,我们需要计算3、5、8、4、2、1,则当我们对n=5、8、4、2进行验证的时候,就可以直接判定卡拉兹猜想的真伪,而不需要重复计算,因为这4个数已经在验证3的时候遇到过了,我们称5、8、4、2是被3“覆盖”原创 2017-10-26 17:37:32 · 201 阅读 · 0 评论 -
《算法》笔记
早就说要开始系统的学算法了,可总是被这个事那个事所拖累,从今天开始,认真拿着《算法》跟着coursera上的课程学算法。1Union_Find判断问题: 算法的设计总是由API的设计开始,先将需要解决的问题抽象化,对需要的功能写出相应的API,然后在考虑解决这个问题用什么数据结构最好,最后再开始实现各个API。 关于Union_Find问题,判断两个对象之间是否联通的一个抽象的想法便是将unio原创 2017-11-28 11:39:52 · 221 阅读 · 0 评论 -
蓝桥杯历届试题 格子刷油漆
问题描述 X国的一段古城墙的顶端可以看成 2*N个格子组成的矩形(如下图所示),现需要把这些格子刷上保护漆。 你可以从任意一个格子刷起,刷完一格,可以移动到和它相邻的格子(对角相邻也算数),但不能移动到较远的格子(因为油漆未干不能踩!) 比如:a d b c e f 就是合格的刷漆顺序。 c e f d a b 是另一种合适的方案。 当已知 N 时,求总的方案数。当N较原创 2018-01-03 22:18:17 · 845 阅读 · 0 评论 -
第九届蓝桥杯国赛JavaB组——整理玩具
小明有一套玩具,一共包含NxM个部件。这些部件摆放在一个包含NxM个小格子的玩具盒中,每个小格子中恰好摆放一个部件。每一个部件上标记有一个0~9的整数,有可能有多个部件标记相同的整数。小明对玩具的摆放有特殊的要求:标记相同整数的部件必须摆在一起,组成一个矩形形状。如以下摆放是满足要求的:0002200033444441224412244122330123456789以下摆放...原创 2019-05-21 18:31:43 · 289 阅读 · 0 评论