自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (9)
  • 收藏
  • 关注

原创 精选力扣500题 第49题 LeetCode 110. 平衡二叉树【c++详细题解】

目录1、题目2、思路3、c++代码4、java代码1、题目给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点的左右两个子树的高度差的绝对值不超过 1 。示例 1:输入:root = [3,9,20,null,null,15,7]输出:true示例 2:输入:root = [1,2,2,3,3,null,null,4,4]输出:false示例 3:输入:root = []输出:true提示:树中的节点数在范围 [0,

2021-06-30 09:55:03 1570 24

原创 精选力扣500题 第48题 LeetCode 151. 翻转字符串里的单词【c++详细题解】

目录1、题目2、思路3、c++代码1、题目给你一个字符串 s,逐个翻转字符串中的所有 单词 。单词 是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的 单词 分隔开。请你返回一个翻转 s 中单词顺序并用单个空格相连的字符串。说明:输入字符串 s 可以在前面、后面或者单词间包含多余的空格。翻转后单词间应当仅用一个空格分隔。翻转后的字符串中不应包含额外的空格。示例 1:输入:s = "the sky is blue"输出:"blue is sky the"示例 2:输

2021-06-30 09:50:11 3678 9

原创 精选力扣500题 第47题 LeetCode 113. 路径总和 II【c++/java详细题解】

目录1、题目2、思路3、c++代码4、java代码1、题目给你二叉树的根节点 root和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。叶子节点 是指没有子节点的节点。示例 1:输入:root = [5,4,8,11,null,13,4,7,2,null,null,5,1], targetSum = 22输出:[[5,4,11,2],[5,8,4,5]]示例 2:输入:root = [1,2,3], targetSum = 5输出:[

2021-06-29 15:07:36 3260 13

原创 精选力扣500题 第46题 LeetCode 105. 从前序与中序遍历序列构造二叉树【c++/java详细题解】

目录1、题目2、思路3、c++代码4、java代码1、题目根据一棵树的前序遍历与中序遍历构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]返回如下的二叉树: 3 / \ 9 20 / \ 15 72、思路(递归) O(n)O(n)O(n)二叉树前序遍历的顺序为:根左右二叉树中序遍历的顺序为:左根右递归建立整棵二叉树:先创

2021-06-29 15:02:22 3926 17

原创 探寻宝藏 【算法设计与分析课设】 c语言代码 + 思路详解 + 三维优化

目录1、题目2、思路13、代码14、思路25、代码21、题目传说HMH大沙漠中有一个M*N迷宫,里面藏有许多宝物。某天,Dr.Kong找到了迷宫的地图,他发现迷宫内处处有宝物,最珍贵的宝物就藏在右下角,迷宫的进出口在左上角。当然,迷宫中的通路不是平坦的,到处都是陷阱。Dr.Kong决定让他的机器人卡多去探险。但机器人卡多从左上角走到右下角时,只会向下走或者向右走。从右下角往回走到左上角时,只会向上走或者向左走,而且卡多不走回头路。(即:一个点最多经过一次)。当然卡多顺手也拿走沿路的每个宝物。Dr.K

2021-06-26 19:14:21 6458 46

原创 LeetCode 56. 合并区间【c++/java详细题解】

目录1、题目2、思路3、c++代码4、java代码1、题目以数组 intervals 表示若干个区间的集合,其中单个区间为intervals[i] = [starti, endi]。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。示例 1:输入:intervals = [[1,3],[2,6],[8,10],[15,18]]输出:[[1,6],[8,10],[15,18]]解释:区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].示例 2

2021-06-25 17:33:46 5053 23

原创 精选力扣500题 第44题 LeetCode 82. 删除排序链表中的重复元素 II【c++/java详细题解】

目录1、题目2、思路3、c++代码4、java代码1、题目存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除链表中所有存在数字重复情况的节点,只保留原始链表中 没有重复出现 的数字。返回同样按升序排列的结果链表。示例 1:输入:head = [1,2,3,3,4,4,5]输出:[1,2,5]示例 2:输入:head = [1,1,1,2,3]输出:[2,3]提示:链表中节点数目在范围[0, 300] 内-100 <= Node.val <= 1

2021-06-25 17:27:43 3260 17

原创 LeetCode 148. 排序链表【c++/java详细题解】

目录1、题目2、思路3、c++代码4、java代码1、题目给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。进阶:你可以在 O(nlogn)O(nlogn)O(nlogn) 时间复杂度和常数级空间复杂度下,对链表进行排序吗?示例 1:输入:head = [4,2,1,3]输出:[1,2,3,4]示例 2:输入:head = [-1,5,3,4,0]输出:[-1,0,3,4,5]示例 3:输入:head = []输出:[]提示:链表中节点的

2021-06-24 20:56:53 3966 41

原创 精选力扣500题 第42题 LeetCode 155. 最小栈【c++/java详细题解】

目录1、题目2、思路3、c++代码4、java代码1、题目设计一个支持 push ,pop ,top操作,并能在常数时间内检索到最小元素的栈。push(x)—— 将元素 x 推入栈中。pop()—— 删除栈顶的元素。top()—— 获取栈顶元素。getMin()—— 检索栈中的最小元素。示例:输入:["MinStack","push","push","push","getMin","pop","top","getMin"][[],[-2],[0],[-3],[],[],[],[]]

2021-06-24 20:48:41 2606 10

原创 精选力扣500题 第41题 LeetCode 200. 岛屿数量【c++/java详细题解】

目录1、题目2、思路3、c++代码4、java代码1、题目给你一个由 '1'(陆地)和'0'(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条边均被水包围。示例 1:输入:grid = [ ["1","1","1","1","0"], ["1","1","0","1","0"], ["1","1","0","0","0"], ["0","0","0","0","0"]]

2021-06-23 14:52:51 3293 11

原创 精选力扣500题 第40题 LeetCode 234. 回文链表【c++/java详细题解】

目录1、题目2、思路3、c++代码4、java代码1、题目请判断一个链表是否为回文链表。示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: true进阶:你能否用 O(n)O(n)O(n) 时间复杂度和 O(1)O(1)O(1) 空间复杂度解决此题?2、思路(链表操作) O(n)O(n)O(n)假设初始的链表是 L1→L2→L3→…→LnL1→L2→L3→…→LnL1→L2→L3→…→Ln。 分两步处理:

2021-06-22 09:35:46 2876 13

原创 精选力扣500题 第39题 LeetCode 20. 有效的括号【c++/java详细题解】

目录1、题目2、思路3、c++代码4、c++简化代码5、java代码6、java简化代码1、题目给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。示例 1:输入:s = "()"输出:true示例 2:输入:s = "()[]{}"输出:true示例 3:输入:s = "(]"输出:false示例 4:输入:s = "([)]"输出:f

2021-06-22 09:32:30 2889 19

原创 精选力扣500题 第38题 LeetCode 300.长递增子序列【c++/java详细题解】

目录1、题目2、思路13、c++代码14、java代码15、思路26、c++代码21、题目给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7]是数组 [0,3,1,6,2,2,7]的子序列。示例 1:输入:nums = [10,9,2,5,3,7,101,18]输出:4解释:最长递增子序列是 [2,3,7,101],因此长度为 4 。示例 2:输入:nums = [0,1

2021-06-16 10:50:00 2896 29

原创 LeetCode 143. 重排链表【c++ 详细题解】

目录1、题目2、思路3、c++代码1、题目给定一个单链表LLL:L0→L1→…→Ln-1→Ln,将其重新排列后变为: L0→Ln→L1→Ln-1→L2→Ln-2→…你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例 1:给定链表 1->2->3->4, 重新排列为 1->4->2->3.示例 2:给定链表 1->2->3->4->5, 重新排列为 1->5->2->4->3.2、思路(

2021-06-16 10:42:58 2807 13

原创 精选力扣500题 第36题 LeetCode 124. 二叉树中的最大路径和【c++ / java 详细题解】

目录1、题目2、思路3、c++代码4、java代码1、题目路径 被定义为一条从树中任意节点出发,沿父节点-子节点连接,达到任意节点的序列。同一个节点在一条路径序列中至多出现一次 。该路径 至少包含一个 节点,且不一定经过根节点。路径和 是路径中各节点值的总和。给你一个二叉树的根节点 root ,返回其 最大路径和 。示例 1:输入:root = [1,2,3]输出:6解释:最优路径是 2 -> 1 -> 3 ,路径和为 2 + 1 + 3 = 6示例 2:输入:root

2021-06-13 17:20:23 1966 24

原创 精选力扣500题 第35题 LeetCode 94. 二叉树的中序遍历【c++ / java 详细题解】

目录1、题目2、思路13、c++代码14、java代码15、思路26、c++代码27、java代码21、题目给定一个二叉树的根节点 root ,返回它的 中序 遍历。示例 1:输入:root = [1,null,2,3]输出:[1,3,2]示例 2:输入:root = []输出:[]示例 3:输入:root = [1]输出:[1]示例 4:输入:root = [1,2]输出:[2,1]示例 5:输入:root = [1,null,2]输出:[1,2]提示:

2021-06-13 17:15:44 1610 9

原创 计算机网络学习笔记第六章(应用层)超详细整理

目录6.1、应用层概述6.2、客户/服务器方式(C/S方式)和对等方式(P2P方式)1、概念2、客户/服务器方式(C/S方式)3、对等方式(P2P方式)4、总结6.3、动态主机配置协议DHCP1、概念2、DHCP的作用3、DHCP的工作过程4、DHCP中继代理5、总结6.4、域名系统DNS1、概述2、域名解析过程3、总结6.5、文件传送协议FTP1、概念2、文件传送协议FTP的应用3、FTP基本工作原理4、总结6.6、电子邮件1、概念邮件发送和接收过程2、简单邮件传送协议SMTP(Simple Mail T

2021-06-13 09:44:40 5344 40

原创 计算机网络学习笔记第五章(运输层)超详细整理

这里写目录标题一级目录二级目录三级目录5.1、运输层概述1、概念2、总结5.2、运输层端口号、复用与分用的概念1、为什么用端口号2、发送方的复用和接收方的分用3、TCP/IP体系的应用层常用协议所使用的运输层熟知端口号4、运输层传输流程5.3、UDP和TCP的对比1、概念2、用户数据报协议UDP(User Datagram Protocol)3、传输控制协议TCP(Transmission Control Protocol)4、总结5.4、TCP的流量控制1、概念2、总结5.5、TCP的拥塞控制1、概念2、

2021-06-07 09:04:25 11584 36

原创 精选力扣500题 第34题 LeetCode 470. 用 Rand7() 实现 Rand10()【c++ / java 详细题解】

目录1、题目2、思路3、c++代码4、java代码1、题目已有方法 rand7 可生成 1 到 7 范围内的均匀随机整数,试写一个方法 rand10 生成 1 到 10 范围内的均匀随机整数。不要使用系统的 Math.random()方法。示例 1:输入: 1输出: [7]示例 2:输入: 2输出: [8,4]示例 3:输入: 3输出: [8,1,10]提示:rand7已定义。传入参数: n 表示 rand10的调用次数。进阶:rand7()调用次数的 期望值

2021-06-03 08:17:38 989 11

原创 精选力扣500题 第33题 剑指Offer 22. 链表中倒数第k个节点【c++ / java 详细题解】

目录1、题目2、思路3、c++代码4、java代码1、题目输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点开始,它们的值依次是 1、2、3、4、5、6。这个链表的倒数第3个节点是值为 4的节点。示例:给定一个链表: 1->2->3->4->5, 和 k = 2.返回链表 4->5.2、思路(链表)O(n)O(n)O(n)由于单链表不能索引到前驱节点,所以只

2021-06-03 08:05:49 810 11

原创 计算机网络学习笔记第四章(网络层)超详细整理

目录4.1、网络层概述1、简介2、总结4.2、网络层提供的两种服务1、面向连接的虚电路服务2、无连接的数据报服务3、虚电路服务与数据报服务的对比4.3、IPv41、概述2、分类编制的IPv4地址2.1、简介2.2、总结3、划分子网的IPv4地址3.1、为什么要划分子网3.2、如何划分子网3.3、子网掩码3.4、总结4、无分类编址的IPv4地址1、为什么使用无分类编址2、如何使用无分类编址3、路由聚合(构造超网)总结5、IPv4地址的应用规划1、定长的子网掩码FLSM(Fixed Length Subnet

2021-06-02 08:42:49 25961 42

redis数据库指令合集.rar

内含redis入门指南,redis-指令

2021-08-03

Shiro入门.rar

笔记(pdf + md格式) + 源码

2021-06-12

MySQL55题及答案.rar

精选MySQL55道面试题

2021-05-06

狂神说JavaWeb笔记.rar

狂神说JavaWeb笔记,内含JavaWeb的md格式笔记

2021-05-06

狂神说员工管理系统.rar

狂神Spring Boot 员工管理系统 【源码 + 笔记 + web素材】 超详细整理

2021-05-06

Doubbo面试及答案.rar

精选Doubbo面试题(含答案)

2021-05-06

350道Java面试题手册+Java基础面试题.rar

350道Java面试题手册和Java基础面试题整理,内含性能优化面试专栏和微服务架构面试专栏,并发编程高级面试专栏,,开源框架面试题专栏以及分布式面试专栏。

2021-05-06

狂神说多线程详解.rar

狂神说多线程详解笔记

2021-05-06

狂神说JVM探究.rar

B站【狂神说Java】JVM快速入门篇笔记,内有md格式,pdf格式, docx格式笔记,和视频内笔记基本无误。

2021-05-06

空空如也

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

TA关注的人

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