一、介绍 这题居然可以用广搜,感觉自己对广搜的理解还是太狭隘了,多刷点这方面的题吧。 二、题目 给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明:叶子节点是指没有子节点的节点。 示例 1: 输入:root = [3,9,20,null,null,15,7] 输出:2 示例 2: 输入:root =…
一、介绍 这题看似简单的回溯,却有很多边界问题,足足搞了3-4个小时才通过。 二、题目 n 皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。 上图为 8 皇后问题的一种解法。 给定一个整数 n,返回所有不同的 n 皇后问题的解决方案。 每一种解法包含一个…
一、认识 最近跟朋友聊到刷题,朋友建议我先将思路写下来,理清楚了再开始写代码。这样做确实有好处,因为写思路时,会更早的发现问题,解决了,想清楚了,再去写代码。这样就能避免走很多弯路。 做这道题的时候,就没有盲目的开始写了。先把思路写出来,写的时候就发现了问题,并解决它,才开始写代码。因此,这次写的代码都没有浪费,以前刷题时经常写一些最终没用到的代码…
用例图 一、介绍 用例图是需求分析的重要部分,细化用例图就能得到类图,后续根据类图开发程序。用例图由参与者、用例、边界以及他们之间的关系构成。 二、参与者 可理解为不同的角色,指一类用户,而不针对某一个用户。就像Java里的类一样。用小人表示。 三、用例 某个功能,参与者的某个操作。Java里的方法。用椭圆表示。 四、边界 系统之间的界限。用矩形表…
迁移博客 刚开始时,我的博客和及应用都是直接部署服务器的。在去年,由于服务器中了挖矿病毒( 老李 帮我解决的),就将博客和应用迁移到了 老李 的NAS服务器上,通过内网穿透来访问。 今年新购了2h4g的云服务器,以前租的服务器是1h2g的,当时在那台服务器上部署了博客和一个应用,但应用经常停止,排查发现是wdcp面板占内存,导致系统内存不足…
一、介绍 斐波那契数应该是动态规划的入门题,看到过很多次了。解法一般分为两种,自下而上和自上而下+备忘录(优化重复子问题) 使用leetcode的idea插件 二、题目 斐波那契数,通常用 F(n) 表示,形成的序列称为斐波那契数列。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是: F(0) = 0, F(1) = 1…
ThreadLocal结构图 结构变化后带来的好处 早期ThreadLocalMap里的Entry较多,每个线程都有一个,占用空间大 线程销毁时,后期的ThreadLocalMap将会销毁,释放资源 设置默认值,也就是当前线程和ThreadLocal对象还未往ThreadLocalMap里存数据时 ThreadLocal<String>…
Java引用分为强引用、软引用、弱引用、虚引用 一、强引用 public class M { @Override protected void finalize() throws Throwable { System.out.println("m.finalize"); super.finalize(); } } public …
使用Markdown来做笔记,但每次在家里要使用时,都要远程公司,提交笔记到git,再在家里电脑上拉取,这是个重复的过程。重复==可以用程序解决 于是写了个脚本,电脑启动时拉取,每天晚上9点提交 之前在工作中遇到切换代码分支后,每次都要构建很多组件,也是写了个脚本一键执行 Windows步骤如下 1. 提交脚本 set codePath=D:\wo…
这篇文章没有摘要