自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 大厂招聘-校招生/实习生 后端学习路线-Java

大厂招聘-后端学习路线-Java我是一个Java后端开发人员,校招生,在面试过程中深感Java作为红海,找工作投简历的人那是一个多呀,打个比喻,100人找工作,20个是算法,10个是前端和移动端,10个是测试开发、运维等,60个人就是找后端工作,后台里面有差不多百分之五六十是Java,所以作为一名Java后台开发,有一个好的学习路线,打牢基础是关键,基础是大厂招人的必要条件,好的项目经历和框架知识也是一个特别大的加分项1、基础知识作为基础,操作系统、数据结构与算法、计算机网络、掌握一门编程语言、

2021-02-07 02:16:53 712 1

原创 力扣 105. 从前序与中序遍历序列构造二叉树 题解

力扣 105. 从前序与中序遍历序列构造二叉树 题解根据一棵树的前序遍历与中序遍历构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]返回如下的二叉树:二叉树结构public class TreeNode { int val; TreeNode left; TreeNode right; TreeNode() {} T

2021-02-07 01:32:47 419

原创 最大二叉树

最大二叉树给定一个不含重复元素的整数数组 nums 。一个以此数组直接递归构建的 最大二叉树 定义如下:二叉树的根是数组 nums 中的最大元素。左子树是通过数组中 最大值左边部分 递归构造出的最大二叉树。右子树是通过数组中 最大值右边部分 递归构造出的最大二叉树。返回有给定数组 nums 构建的 最大二叉树 。示例 1:示例 2:输入:nums = [3,2,1]输出:[3,null,2,null,1]提示:1 <= nums.length <= 10

2021-02-06 16:55:49 280

原创 四数之和

四数之和方式一:暴力法class Solution { public List<List<Integer>> fourSum(int[] nums, int target) { List<List<Integer>> res = new ArrayList<>(); for(int a=0; a<nums.length; a++){ for(int b=a+1; b<

2021-01-30 20:28:12 85

原创 三数之和

方式一:暴力法,超时class Solution { public List<List<Integer>> threeSum(int[] nums) { List<List<Integer>> res = new ArrayList<>(); for(int i=0; i<nums.length; i++){ for (int j=i+1; j<nums.length..

2021-01-29 21:43:35 80

原创 两数之和

方式一:暴力法,两个循环,枚举值找到结束循环class Solution { public static int[] twoSum(int[] nums, int target) { int[] res = new int[2]; for (int i=0; i<nums.length; i++){ for (int j=i+1; j<nums.length; j++){ int sum = n..

2021-01-29 18:32:32 116

原创 MySQL的四种隔离级别

1、事务的四大特性原子性:事务中包含的操作要么都做要么都不做。一致性:事务的执行结果必须是使数据库从一个一致性状态变到另一个一致性状态。隔离性:一个事务的执行不能呗其他事务干扰,即一个事务内部的操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。持久性:一个事务一旦提交,它对数据库中的数据的改变就应该是永久性的,接下来的其他操作或者故障不应该对其执行结果有任何影响。2、MySQL的四种隔离级别Read Uncommitted (读未提交)该隔离级别,所有事务都

2020-09-26 17:11:33 245

原创 你不知道的Java

1、Java中 a += b 与 a = a + b的区别+=会进行隐式类型转换,而 = 不会,会编译错误,并且小类型会隐式隐式转换为大类型2、为什么保证全局唯一不用public static final 而要用单例模式

2020-08-30 18:01:33 299 1

原创 网络相关知识

1、HTTP的定义HTTP(HyperText Transfer Protocol):超文本传输协议,基于客户端/服务端的架构模型,用于客户端和服务端之间的通信。请求访问资源的一方为客户端,负责接收,提供响应的一方为服务端。基于TCP/IP协议的应用层协议,不涉及数据包传输,规定了客户端和服务器之间的通信方式,默认端口为80通过发送信息(请求)和回应信息(响应)达成交易(通信)2、HTTP历史3、HTTP的特点HTTP都是由客户端发起请求,并且由服务端回应响应消息的。灵活:可以允许任何类

2020-08-07 21:18:50 549

原创 2020三月实习后台春招经历

1.美团点评(二面凉经)3.12笔试(一道ac,一道86%),3.18收到一面电话面通知,重置3.23一面视频面。一面,1h20min 1、自我介绍,然后手撕算法。2、深挖项目,负责哪些内容,收获,怎么实现的,设计数据库。3、aop,ioc及实现原理4、线程实现方式,线程池,最大线程数,核心线程数,有那些拒绝策略,默认和分别是哪些。5、有哪些锁,自旋锁、轻量级锁、重量级锁等,说说乐观...

2020-03-26 19:03:31 573

原创 Flink简介

Flink是什么Apache Flink是一个框架和分布式处理引擎,用于对无界和有界数据流进行状态计算。

2021-05-03 23:23:00 190 1

原创 一个框架解决回溯算法

什么是回溯算法,先上百度百科定义:回溯算法实际上一个类似枚举的搜索尝试过程,主要是在搜索尝试过程中寻找问题的解,当发现已不满足求解条件时,就“回溯”返回,尝试别的路径。回溯法是一种选优搜索法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标,就退回一步重新选择,这种走不通就退回再走的技术为回溯法,而满足回溯条件的某个状态的点称为“回溯点”。许多复杂的,规模较大的问题都可以使用回溯法,有“通用解题方法”的美称。总结,如下图,如果我们需要知道下图中从顶点1-5有多少条路

2021-05-02 21:56:20 294 3

原创 阿里一二三面、HR面面经-后台

Java方向,校招正式岗位,后台开发技术面,主要偏向基础知识,算法和项目。1.一致性hash了解么2.项目,项目的背景是什么,你在其中负责什么,遇到的难点,怎么解决的,有什么收获。3.MySQL的索引、数据结构,为什么要选用B+树而不用其他数据结构、隔离级别,各个隔离级别下会出现什么问题,MySQL怎么解决的,锁(行锁、表锁、间隙锁),MVCC,MySQL的引擎,MySQL的分库分表等,binglog、redo log以及undo log4.JVM分为哪些区域,他们的关系、JVM性能

2021-05-01 20:46:16 2184 2

原创 目录

计算机网络网络相关面试题

2021-04-30 00:03:08 170 1

原创 leetcode 652. 寻找重复的子树 题解 java实现

力扣 652. 寻找重复的子树 题解 java实现给定一棵二叉树,返回所有重复的子树。对于同一类的重复子树,你只需要返回其中任意一棵的根结点即可。两棵树重复是指它们具有相同的结构以及相同的结点值。示例 1:因此,你需要以列表的形式返回上述重复子树的根结点。思路找到以当前节点的树结构,然后存入HashMap里面,顺便记录出现次数,当出现次数为1次的时候加入结果,找到当前根节点的树结构用后序遍历class Solution { List<TreeNode>

2021-02-09 16:53:31 370 6

原创 ES6新特性之let和const命令

ES6新特性之let和const命令ES6新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。例如{ let a = 10; var b = 1;}a // ReferenceError: a is not defined.b // 1不存在变量提升let不像var那样会发生“变量提升”现象。所以,变量一定要在声明后使用,否则报错。console.log(foo); // 输出undefinedconsole.

2021-02-07 16:20:28 2518 14

原创 二叉树展开为链表

二叉树展开为链表给你二叉树的根结点 root ,请你将它展开为一个单链表:展开后的单链表应该同样使用 TreeNode ,其中 right 子指针指向链表中下一个结点,而左子指针始终为 null 。展开后的单链表应该与二叉树 先序遍历 顺序相同。输入:root = [1,2,5,3,4,null,6]输出:[1,null,2,null,3,null,4,null,5,null,6]示例 2:输入:root = []输出:[]示例 3:输入:root = [0]输出:

2021-02-04 22:18:05 150

原创 网络相关面试题

1、CPU负载和CPU利用率的区别可以通过uptime,w,top命令查看CPU的平均负载Load Average:指的是当前系统处于正在运行和等待的进程,3个参数代表系统过去的1分钟,5分钟,15分钟内的系统平均负载单核cpu负载为1时表示满负载,如4核cpu满负载为4,一般合适为70%,超过之后可能需要排查CPU利用率:指当前运行进程实时占用CPU的百分比,是一段时间内CPU使用情况的统计例如厕所有一个坑位,如果有一个人占用了坑位,这时候负载就是1,如果再来一个人排队负载就是2

2021-02-04 21:44:41 144 2

原创 填充每个节点的下一个右侧节点指针

填充每个节点的下一个右侧节点指针给定一个 完美二叉树 ,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下:struct Node {int val;Node *left;Node *right;Node *next;}填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为 NULL。初始状态下,所有 next 指针都被设置为 NULL。...

2021-02-04 01:15:35 114 2

原创 翻转二叉树

翻转二叉树翻转一棵二叉树。解法:二叉树的前序遍历class Solution { public TreeNode invertTree(TreeNode root) { if(root == null) return null; //交换左右节点 TreeNode temp = root.left; root.left = root.right; root.right = temp; inve

2021-02-04 00:34:54 96

原创 子集

力扣78题子集给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。示例 1:输入:nums = [1,2,3]输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]示例 2:输入:nums = [0]输出:[[],[0]]提示:1 <= nums.length <= 10-10 <= nums[i] <= 10num

2021-02-03 17:59:25 122 3

原创 回文链表

回文链表ListNode结构如下 public static class ListNode { int val; ListNode next; ListNode() {} ListNode(int val) { this.val = val; } ListNode(int val, ListNode next) { this.val = val; this.next = next; } }方式一:栈

2021-02-02 00:15:28 103

原创 最长回文子序列

最长回文子序列

2021-02-01 22:39:19 88

原创 最长回文子串

最长回文子串

2021-02-01 22:27:04 89

原创 K 个一组翻转链表

K 个一组翻转链表ListNode结构如下 public class ListNode { int val; ListNode next; ListNode(int x) { val = x; } }

2021-01-31 15:26:36 89

原创 反转链表 II

反转链表的一部分ListNode结构如下 public class ListNode { int val; ListNode next; ListNode(int x) { val = x; } }解法如下:class Solution { public ListNode reverseBetween(ListNode head, int m, int n) { if (head == null || head

2021-01-31 15:23:42 92

原创 反转链表前N个节点

反转链表前N个节点,并返回反转后的链表ListNode结构如下 public class ListNode { int val; ListNode next; ListNode(int x) { val = x; } }class Solution { //后继节点 ListNode successor = null; public ListNode reverseN(ListNode head, int n){

2021-01-31 15:21:30 666 1

原创 反转链表

反转链表ListNode结构如下 public class ListNode { int val; ListNode next; ListNode(int x) { val = x; } }方式一:非递归用next指针存下一个地址,用pre存反转后的链表,每次把当前值插入到最前面,头插法class Solution { public ListNode reverseList(ListNode head) {

2021-01-31 15:00:01 86

空空如也

空空如也

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

TA关注的人

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