月度归档: 2021年1月

7 篇文章

LeetCode704. 二分查找
一、思路 这是最基本的二分,easy! 说一下这里:int mid = left + ((right - left) >> 1); 1、移位是为了提高效率 2、不用(left+right)/2是防止int溢出 二、题目 给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target &nbs…
LeetCode46. 全排列
一、介绍 这是基础的回溯题了。 二、题目 给定一个 没有重复 数字的序列,返回其所有可能的全排列。 示例: 输入: [1,2,3] 输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1] ] Related Topics回溯算法 \n 👍 1046👎 0 三、代码 class Solut…
thumbnail
LeetCode111. 二叉树的最小深度
一、介绍 这题居然可以用广搜,感觉自己对广搜的理解还是太狭隘了,多刷点这方面的题吧。 二、题目 给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明:叶子节点是指没有子节点的节点。   示例 1: 输入:root = [3,9,20,null,null,15,7] 输出:2 示例 2: 输入:root =…
thumbnail
LeetCode51. N皇后
一、介绍 这题看似简单的回溯,却有很多边界问题,足足搞了3-4个小时才通过。 二、题目 n 皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。 上图为 8 皇后问题的一种解法。 给定一个整数 n,返回所有不同的 n 皇后问题的解决方案。 每一种解法包含一个…
LeetCode752. 打开转盘锁
一、认识 最近跟朋友聊到刷题,朋友建议我先将思路写下来,理清楚了再开始写代码。这样做确实有好处,因为写思路时,会更早的发现问题,解决了,想清楚了,再去写代码。这样就能避免走很多弯路。 做这道题的时候,就没有盲目的开始写了。先把思路写出来,写的时候就发现了问题,并解决它,才开始写代码。因此,这次写的代码都没有浪费,以前刷题时经常写一些最终没用到的代码…
thumbnail
软件设计第一步——需求分析之用例图
用例图 一、介绍 用例图是需求分析的重要部分,细化用例图就能得到类图,后续根据类图开发程序。用例图由参与者、用例、边界以及他们之间的关系构成。 二、参与者 可理解为不同的角色,指一类用户,而不针对某一个用户。就像Java里的类一样。用小人表示。 三、用例 某个功能,参与者的某个操作。Java里的方法。用椭圆表示。 四、边界 系统之间的界限。用矩形表…
博客又搬家了
迁移博客 ​ 刚开始时,我的博客和及应用都是直接部署服务器的。在去年,由于服务器中了挖矿病毒( 老李 帮我解决的),就将博客和应用迁移到了 老李 的NAS服务器上,通过内网穿透来访问。 ​ 今年新购了2h4g的云服务器,以前租的服务器是1h2g的,当时在那台服务器上部署了博客和一个应用,但应用经常停止,排查发现是wdcp面板占内存,导致系统内存不足…