• 每日题解:LeetCode 783. 二叉搜索树节点最小距离

    题目地址题目描述给你一个二叉搜索树的根节点root,返回树中任意两不同节点值之间的最小差值。注意:本题与530:https://leetcode-cn.com/problems/minimum-absolute-difference-in-bst/相同示例1:输入:root=[4,2,6,1,3]输...

    每日题解:LeetCode 179. 最大数

    题目地址题目描述给定一组非负整数nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。示例1:输入:nums=[10,2]输出:"210"示例2:输入:nums=[3,30,34,5,9]输出:&qu...

    每日题解:LeetCode 264. 丑数 II

    题目地址题目描述给你一个整数n,请你找出并返回第n个丑数。丑数就是只包含质因数2、3和/或5的正整数。示例1:输入:n=10输出:12解释:[1,2,3,4,5,6,8,9,10,12]是由前10个丑数组成的序列。示例2:输入:n=1输出:1解释:1通常被视为丑数。解法classSolution{p...

    每日题解:LeetCode 33. 搜索旋转排序数组

    https://leetcode-cn.com/problems/search-in-rotated-sorted-array/题目描述已知一个长度为n的数组,预先按照升序排列,经由1到n次旋转后,得到输入数组。例如,原数组nums=[0,1,2,4,5,6,7]在变化后可能得到:若旋转4次,则可以...

    每日题解:LeetCode 263. 丑数

    题目地址题目描述给你一个整数n,请你判断n是否为丑数。如果是,返回true;否则,返回false。丑数就是只包含质因数 2、3和/或 5 的正整数。 示例1:输入:n=6输出:true解释:6=2×3示例2:输入:n=8输出:true解释:8=2×2×2示例3:输入:n=14输出:false解释:1...

    功能设计:如何实现一个扫码上传附件的功能

    授权码(authorizationcode)方式,指的是第三方应用先申请一个授权码,然后再用该码获取令牌。这种方式是最常用的流程,安全性也最高,它适用于那些有后端的Web应用。授权码通过前端传送,令牌则是储存在后端,而且所有与资源服务器的通信都在后端完成。这样的前后端分离,可以避免令牌泄漏。需求背景...

    每日题解:LeetCode 45. 螺旋矩阵

    题目地址题目描述给你一个m行n列的矩阵matrix,请按照顺时针螺旋顺序,返回矩阵中的所有元素。示例1:输入:matrix=[[1,2,3],[4,5,6],[7,8,9]]输出:[1,2,3,6,9,8,7,4,5]示例2:输入:matrix=[[1,2,3,4],[5,6,7,8],[9,10,...

    项目工具:线上"假死“问题解决(Jstack工具分析,脚本监控服务)

    问题项目在正式上线后,偶发性出现项目的"假死"的问题,项目无法响应前端的请求,一开始,架构师查询到存在大量锁表的情况,去掉了一些长时间任务的更新的事务,同时提高了JVM的-Xmx和-Xms的大小,第一天虽然情况有所缓解,在第二天访问量上去后,还是出现了假死的问题。于是,在顶着客户...

    项目重构:一行代码的背后-设计模式(模板方法+管道模式)

    管道-过滤器模式的体系结构是面向数据流的软件体系结构。它最典型的应用是在编译系统。一个普通的编译系统包括词法分析器,语法分析器,语义分析与中间代码生成器,优化器,目标代码生成器等一系列对源程序进行处理的过程。人们可以将编译系统看作一系列过滤器的连接体,按照管道-过滤器的体系结构进行设计。此外,这种体...

    折腾日记:构建JDK9源码

    作为JAVA开发者,JDK一定天天都会用到,所以想这周编译一下JDK源码,项目一直在使用JDK8,所以可以编译JDK9,这里的JDK指的是openJDK,每个版本的JDK编译都需要一个BootJDK(可以参考building.html中编译指南),比如JDK9,就需要JDK8openJDK做为GPL...