全菜工程师小辉
全菜工程师小辉
全部文章
分类
Java语言特性(6)
剑指offer最优解Java版(40)
数据库与中间件(3)
框架相关(1)
算法相关(3)
归档
标签
去牛客网
登录
/
注册
全菜工程师小辉的博客
有关后端开发和机器学习相关的干货分享,微信公众号同名
全部文章
(共53篇)
剑指offer最优解Java版-和为S的连续正数序列
题目描述 小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:18,19,20,21,22。现在把问题交给你,你能不能也很...
2019-07-03
0
518
剑指offer最优解Java版-数组中只出现一次的数字
题目描述 一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。 解决方法 直接用set遍历一下数组就可。 // num1,num2分别为长度为1的数组。传出参数 // 将num1[0],num2[0]设置为返回结果 import java.util.*...
2019-07-03
0
427
剑指offer最优解Java版-平衡二叉树
题目描述 输入一棵二叉树,判断该二叉树是否是平衡二叉树。 解决方法一:递归 遍历每个结点,借助一个获取树深度的递归函数,根据该结点的左右子树高度差判断是否平衡,然后递归地对左右子树进行判断。 public class Solution { public boolean IsBalanc...
2019-07-02
0
490
剑指offer最优解Java版-二叉树的深度
题目描述 输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。 解决方法一:递归 public class TreeNode { int val = 0; TreeNode left = null; T...
2019-07-01
0
440
剑指offer最优解Java版-数字在排序数组中出现的次数
题目描述 统计一个数字在排序数组中出现的次数。 解决方法 因为数组是有序的,所以进行二分查找即可。 public class Solution { public int GetNumberOfK(int [] array , int k) { int length =...
2019-07-01
0
487
剑指offer最优解Java版-两个链表的第一个公共结点
题目描述 输入两个链表,找出它们的第一个公共结点。 解决方法 public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; ...
2019-07-01
0
367
剑指offer最优解Java版-第一个只出现一次的字符
题目描述 在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写). 解决方法 将所有字符和对应的索引存到map中,再遍历map查找第一个出现一次的字符 public class Solu...
2019-06-30
0
331
剑指offer最优解Java版-丑数
题目描述 把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。 解决方法 (转自https://www.nowcoder.com/profile/6327170/c...
2019-06-30
0
440
剑指offer最优解Java版-把数组排成最小的数
题目描述 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。 解决方法 将数字按照字典序进行升序排列,然后输出即可 class Solution { publ...
2019-06-30
0
425
详解并发下的HashMap以及JDK8的优化
HashMap使用链表法避免哈希冲突(相同hash值),当链表长度大于TREEIFY_THRESHOLD(默认为8)时,将链表转换为红黑树。当小于等于UNTREEIFY_THRESHOLD(默认为6)时,又会退化回链表以达到性能均衡。 下图为HashMap的数据结构(数组+链表+红黑树 ) ...
2019-06-29
0
559
首页
上一页
1
2
3
4
5
6
下一页
末页