自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(262)
  • 收藏
  • 关注

原创 2020-12-05前端面经2

flex布局 flex布局详解 flex布局就是弹性布局,用来给盒装模型提供最大的灵活性,可以直接给容器设置display:flex,行内元素display:inline-flex flex在容器上有五个属性 1.flex-direction决定主轴的方向,有四个api row:默认值,水平方向从左到右 row-reverse:水平方向从右到左 column:垂直方向从上到下 column-reverse:垂直方向从下到上 .box{ flex-direction:row | roe-reverse | c

2020-12-05 21:42:00 259

原创 2020-12-04前端面经1

JS执行上下文 执行上下文(Execution Context, EC执行环境) 代码执行时会进入不同的执行环境,不同的执行环境有不同的scope(作用域),代码访问到的资源也不一样。在JS中,执行环境有三种: 1.全局环境 代码默认的执行环境,代码执行时会首先进入全局环境。它是最外围的一个环境,根据ECMAscript实现所在的宿主环境的不同,表示全局环境的对象也不一样。在web服务器中,全局环境就是window对象。全局变量和函数都是作为全局对象window的变量和函数来创建。 2.函数环境 函数被调用

2020-12-04 22:15:45 246

原创 2020-02-23

2020-02-23 14:07:12 299

原创 在O(n log n)的时间内使用常数级空间复杂度对链表进行排序。

题目描述 在O(n log n)的时间内使用常数级空间复杂度对链表进行排序。 Sort a linked list in O(n log n) time using constant space complexity. /** * Definition for singly-linked list. * class ListNode { * int val; * List...

2020-01-31 13:44:13 886

原创 求最多能有多少个点位于同一直线上

题目描述 对于给定的n个位于同一二维平面上的点,求最多能有多少个点位于同一直线上 Given n points on a 2D plane, find the maximum number of points that lie on the same straight line. /** * Definition for a point. * class Point { * int...

2020-01-31 13:40:42 450

原创 计算逆波兰式(后缀表达式)的值

题目描述 计算逆波兰式(后缀表达式)的值 运算符仅包含"+","-","*"和"/",被操作数可能是整数或其他表达式 例如: ["2", "1", "+", "3", "*"] -> ((2 + 1) * 3) -> 9↵ ["4", "13", "5", "/", "+"] -> (4 + (13 / 5)) -> 6 Evaluate the value of ...

2020-01-31 13:27:57 218

原创 求给定二叉树的最小深度

题目描述 求给定二叉树的最小深度。最小深度是指树的根结点到最近叶子结点的最短路径上结点的数量。 Given a binary tree, find its minimum depth.The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf...

2020-01-31 13:18:52 357

原创 2019-12-11

TCP三次握手和四次挥手 为什么握手要三次,挥手要四次 详解 虚拟地址和物理地址 解决哈希冲突的方法及其优缺点 详解 集合有哪些接口,哪些实现类 Java集合类里最基本的接口有: Collection:单列集合的根接口 List:元素有序 可重复 ArrayList:类似一个长度可变的数组 。适合查询,不适合增删 LinkedList:底层是双向循环链表。适合增删,不适合查询。 Set:元素无序,...

2019-12-11 20:18:41 98

原创 判断单链表是否有环

声明两个指针,一个指针走一次经过两个节点(快指针quick),另一个走一次经过一个节点(慢指针slow) 方法说明:快指针走的比较快,若链表有环,则一定会追上慢指针,若无环,则会走到链表末端。 public class Solution { public boolean hasCycle(ListNode head) { ==//声明两个节点从头开始遍历节点== ...

2019-12-05 16:34:49 179

原创 2019-12-05

final关键字 final关键字修饰类 final关键字修饰的类不能被继承; final关键字修饰方法 final关键字修饰的方法不能被重写; final关键字修饰变量 final关键字修饰的变量是常量:只能赋值一次; hashCode和equals方法的区别: 1.equal()相等的两个对象他们的hashCode()肯定相等,也就是用equal()对比是绝对可靠的。 2.hashCode()...

2019-12-05 11:15:00 663

原创 对称的二叉树

题目描述 请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。 /* public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { t...

2019-12-04 20:57:24 110

原创 把二叉树打印成多行

题目描述 从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。 import java.util.*; /* public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { th...

2019-12-04 20:45:57 113

原创 滑动窗口的最大值

题目描述 给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个: {[2,3,4],2,6,2,5,1}, {2,[3,4,2],6,2,5,1}, {2,3,[4,2,6],2,5...

2019-12-04 20:41:23 151

原创 剪绳子

题目描述 给你一根长度为n的绳子,请把绳子剪成整数长的m段(m、n都是整数,n>1并且m>1),每段绳子的长度记为k[0],k[1],...,k[m]。请问k[0]xk[1]x...xk[m]可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。 输入描述: 输入一个数n,意义见题面。(2 <= n <= 60) ...

2019-12-04 20:30:03 159

原创 求1+2+3+...+n

题目描述 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。 public class Solution { public int Sum_Solution(int n) { int res = n; if(n == 0) return 0;...

2019-12-04 20:29:22 106

原创 孩子们的游戏(圆圈中最后剩下的数)

题目描述 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。每次喊到m-1的那个小朋友要出列唱首歌,然后可以在礼品箱中任意的挑选礼物,并且不再回到圈中,从他的下一个小朋友开始,继续0...m-1报数....这样下去......

2019-12-04 20:22:16 93

原创 翻转单词顺序列

题目描述 牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。Cat对一一的翻转这些单词顺序可不在行,你能帮助他么? public clas...

2019-12-04 20:20:15 86

原创 和为S的两个数字

题目描述 输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。 输出描述: 对应每个测试案例,输出两个数,小的先输出。 `` ```java import java.util.ArrayList; public class Solution { public ArrayList<Integer> Fi...

2019-12-04 20:13:07 185

原创 和为S的连续正数序列

题目描述 小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:18,19,20,21,22。现在把问题交给你,你能不能也很快的找出所有和为S的连续正数序列? Good Luck! 输出描述: 输出所有和为S的连续正数序列。序...

2019-12-04 20:10:25 102

原创 数组中只出现一次的数字

题目描述 一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。 import java.util.*; //num1,num2分别为长度为1的数组。传出参数 //将num1[0],num2[0]设置为返回结果 public class Solution { public void FindNumsAppearOnce(int [] array,in...

2019-12-04 20:04:54 219

原创 平衡二叉树

题目描述 输入一棵二叉树,判断该二叉树是否是平衡二叉树。 import java.util.*; public class Solution { public boolean IsBalanced_Solution(TreeNode root) { if(root == null) return true; int left = getHight(root...

2019-12-04 20:04:03 97

原创 二叉树的深度

题目描述 输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。 /** public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { ...

2019-12-04 20:02:27 85

原创 两个链表的第一个公共结点

题目描述 输入两个链表,找出它们的第一个公共结点。 import java.util.*; /* public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } }*/ public class Solution { ...

2019-12-04 19:59:22 71

原创 数组中的逆序对

题目描述 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007 输入描述: 题目保证输入的数组中没有的相同的数字 数据范围: 对于%50的数据,size<=10^4 对于%75的数据,size<=10^5 对于%100的数据...

2019-12-04 19:58:23 81

原创 第一个只出现一次的字符

在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写). import java.util.*; public class Solution { public int FirstNotRepeatingChar(String str) { HashMap<Cha...

2019-12-04 19:54:40 71

原创 把数组排成最小的数

题目描述 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。 import java.util.*; public class Solution { public String PrintMinNumber(int [] numbers) { A...

2019-12-04 19:46:36 74

原创 字符串的排列

题目描述 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。 输入描述: 输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。 import java.util.*; public class Solution { public ArrayList...

2019-12-04 19:34:53 83

原创 二叉搜索树与双向链表

题目描述 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。 /** public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { ...

2019-12-04 19:31:41 78

原创 复杂链表的复制

题目描述 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空) /* public class RandomListNode { int label; RandomListNode next = null; Ra...

2019-12-04 19:30:34 107

原创 2019-11-29

1.关于线程池参数的含义 a.核心线程数 b 最大线程数 c 线程空闲时间 d 阻塞队列大小:queueCapacity e 任务拒绝处理器 :rejectedExceptionHandler 2.实现线程池,有四种策略: CachedThreadPool FixedThreadPool SingleThreadExecutor ScheduledThreadPool 3.线程的几种状态以及它们之...

2019-11-29 19:18:58 201

原创 2019-11-26

为什么要重写equals()和hashCode()方法? 链接1 链接2 如果不重写equals方法,则不能比较自定义类,在使用hashmap的时候就会出现问题,同理适用于hashcode,不重写就无法得出原hash值,也自然无法比较依靠原hashcode找到该数据。 不被重写(原生)的hashCode值是根据内存地址换算出来的一个值。 不被重写(原生)的equals方法是严格判断一个对象...

2019-11-27 12:03:29 73

原创 102. 二叉树的层次遍历

给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。 例如: 给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回其层次遍历结果: [ [3], [9,20], [15,7] ] 来源:力扣(LeetCode) 链接:https://leetcode-cn...

2019-11-22 13:09:50 74

原创 98. 验证二叉搜索树

给定一个二叉树,判断其是否是一个有效的二叉搜索树。 假设一个二叉搜索树具有如下特征: 节点的左子树只包含小于当前节点的数。 节点的右子树只包含大于当前节点的数。 所有左子树和右子树自身必须也是二叉搜索树。 示例 1: 输入: 2 / \ 1 3 输出: true 示例 2: 输入: 5 / \ 1 4 / \ 3 6 输出:...

2019-11-22 11:11:59 99

原创 94. 二叉树的中序遍历

给定一个二叉树,返回它的中序 遍历。 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,3,2] 进阶: 递归算法很简单,你可以通过迭代算法完成吗? 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/binary-tree-inorder-traversal 著作权归领扣网...

2019-11-22 09:17:17 287

原创 572. 另一个树的子树

给定两个非空二叉树 s 和 t,检验 s 中是否包含和 t 具有相同结构和节点值的子树。s 的一个子树包括 s 的一个节点和这个节点的所有子孙。s 也可以看做它自身的一棵子树。 示例 1: 给定的树 s: 3 / \ 4 5 / \ 1 2 给定的树 t: 4 / \ 1 2 返回 true,因为 t 与 s 的一个子树拥有相同的结构和...

2019-11-21 16:47:33 100

原创 563. 二叉树的坡度

给定一个二叉树,计算整个树的坡度。 一个树的节点的坡度定义即为,该节点左子树的结点之和和右子树结点之和的差的绝对值。空结点的的坡度是0。 整个树的坡度就是其所有节点的坡度之和。 示例: 输入: 1 / \ 2 3 输出: 1 解释: 结点的坡度 2 : 0 结点的坡度 3 : 0 结点的坡度 1 : |2-3| = 1 树的坡度 ...

2019-11-21 16:45:16 83

原创 543. 二叉树的直径

给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过根结点。 示例 : 给定二叉树 1 / \ 2 3 / \ 4 5 返回 3, 它的长度是路径 [4,2,1,3] 或者 [5,2,1,3]。 注意:两结点之间的路径长度是以它们...

2019-11-21 16:40:28 137

原创 538. 把二叉搜索树转换为累加树

给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater Tree),使得每个节点的值是原来的节点值加上所有大于它的节点值之和。 例如: 输入: 二叉搜索树: 5 / \ 2 13 输出: 转换为累加树: 18 / ...

2019-11-21 16:20:10 96

原创 530. 二叉搜索树的最小绝对差

给定一个所有节点为非负值的二叉搜索树,求树中任意两节点的差的绝对值的最小值。 示例 : 输入: 1 \ 3 / 2 输出: 1 解释: 最小绝对差为1,其中 2 和 1 的差的绝对值为 1(或者 2 和 3)。 注意: 树中至少有2个节点。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/mi...

2019-11-21 13:26:25 88

原创 501. 二叉搜索树中的众数

给定一个有相同值的二叉搜索树(BST),找出 BST 中的所有众数(出现频率最高的元素)。 假定 BST 有如下定义: 结点左子树中所含结点的值小于等于当前结点的值 结点右子树中所含结点的值大于等于当前结点的值 左子树和右子树都是二叉搜索树 例如: 给定 BST [1,null,2,2], 1 \ 2 / 2 返回[2]. 提示:如果众数超过1个,不需...

2019-11-21 11:57:19 239

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除