自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 SpringSecurity简单入门

Spring Security是Spring家族中历史比较悠久的框架之一,具备完整而强大的功能体系。对于日常开发过程中常见的单体应用、微服务架构,以及响应式系统,Spring Security都能够进行无缝集成和整合,并提供多种常见的安全性功能。其核心主要包括:用户信息管理、敏感信息加解密、用户认证、权限控制、跨站点请求伪造保护、跨域支持、全局安全方法、单点登录等。

2022-05-11 15:08:59 977

原创 [剑指OFFER]之动态规划:JZ42 连续子数组的最大和

输入一个长度为n的整型数组array,数组中的一个或连续多个整数组成一个子数组,子数组最小长度为1。求所有子数组的和的最大值。

2022-05-09 13:22:42 474

原创 [剑指OFFER]之搜索算法:JZ44 数字序列中某一位的数字

数字以 0123456789101112131415... 的格式作为一个字符序列,在这个序列中第 2 位(从下标 0 开始计算)是 2 ,第 10 位是 1 ,第 13 位是 1 ,以此类题,请你输出第 n 位对应的数字。

2022-05-09 12:55:23 471

原创 [剑指OFFER]之搜索算法:JZ38 字符串的排列

输入一个长度为 n 字符串,打印出该字符串中字符的所有排列,你可以以任意顺序返回这个字符串数组。

2022-05-08 11:34:43 211

原创 [剑指OFFER]之搜索算法:JZ11 旋转数组的最小数字

有一个长度为 n 的非降序数组,比如[1,2,3,4,5],将它进行旋转,即把一个数组最开始的若干个元素搬到数组的末尾,变成一个旋转数组,比如变成了[3,4,5,1,2],或者[4,5,1,2,3]这样的。请问,给定这样一个旋转数组,求数组中的最小值。#

2022-05-06 17:10:48 712

原创 [剑指OFFER]之搜索算法:JZ4 二维数组中的查找

在一个二维数组array中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。

2022-05-06 17:07:32 67

原创 [剑指OFFER]之搜索算法:JZ53 数字在升序数组中出现的次数

给定一个长度为 n 的非降序数组和一个非负数整数 k ,要求统计 k 在数组中出现的次数

2022-05-06 17:04:35 665

原创 [剑指OFFER]之栈和队列:JZ59 滑动窗口的最大值

给定一个长度为 n 的数组 nums 和滑动窗口的大小 size ,找出所有滑动窗口里数值的最大值。

2022-05-06 16:56:07 160

原创 [剑指OFFER]之栈和队列:JZ73 翻转单词序列

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

2022-05-05 09:32:25 196

原创 [剑指OFFER]之栈和队列:JZ31 栈的压入、弹出序列

[剑指OFFER]之栈和队列:JZ31 栈的压入、弹出序列

2022-05-05 09:25:49 125

原创 [剑指OFFER]之栈和队列:JZ30 包含min函数的栈

定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的 min 函数,输入操作时保证 pop、top 和 min 函数操作时,栈中一定有元素。

2022-05-05 09:19:31 120

原创 [剑指OFFER]之栈和队列:JZ9 用两个栈实现队列

文章目录@[TOC]1.题目2.解法2.1 提供的基础结构2.2 解法1总结1.题目用两个栈来实现一个队列,使用n个元素来完成 n 次在队列尾部插入整数(push)和n次在队列头部删除整数(pop)的功能。 队列中的元素为int类型。保证操作合法,即保证pop操作时队列内已有元素。2.解法2.1 提供的基础结构import java.util.Stack;public class Solution { Stack<Integer> stack1 = new Stack&lt

2022-05-05 09:00:42 135

原创 [剑指OFFER]之树:JZ68 二叉搜索树的最近公共祖先

给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。

2022-05-05 08:54:42 177

原创 [剑指OFFER]之树:JZ86 在二叉树中找到两个节点的最近公共祖先

给定一棵二叉树(保证非空)以及这棵树上的两个节点对应的val值 o1 和 o2,请找到 o1 和 o2 的最近公共祖先节点。

2022-04-29 14:21:12 1563

原创 [剑指OFFER]之树:JZ37 序列化二叉树

通过中序遍历 加 前序(或者后续) 即可恢复一颗二叉树。

2022-04-29 14:13:55 1672

原创 [剑指OFFER]之树:JZ78 把二叉树打印成多行

给定一个节点数为 n 二叉树,要求从上到下按层打印二叉树的 val 值,同一层结点从左至右输出,每一层输出一行,将输出的结果存放到一个二维数组中返回。

2022-04-29 14:09:00 96

原创 [剑指OFFER]之树:JZ28 对称的二叉树

给定一棵二叉树,判断其是否是自身的镜像(即:是否对称)

2022-04-29 13:36:23 1625

原创 [剑指OFFER]之树:JZ8 二叉树的下一个结点

给定一个二叉树其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的next指针。下图为一棵有9个节点的二叉树。树中从父节点指向子节点的指针用实线表示,从子节点指向父节点的用虚线表示

2022-04-29 13:32:50 2171

原创 [剑指OFFER]之树: JZ79 判断是不是平衡二叉树

输入一棵节点数为 n 二叉树,判断该二叉树是否是平衡二叉树。

2022-04-28 13:36:02 122

原创 [剑指OFFER]之树:JZ36 二叉搜索树与双向链表

输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。

2022-04-28 13:31:54 152

原创 [剑指OFFER]之树:JZ84 二叉树中和为某一值的路径(三)

给定一个二叉树root和一个整数值 sum ,求该树有多少路径的的节点值之和等于 sum

2022-04-28 13:28:12 115

原创 [剑指OFFER]之树:JZ34 二叉树中和为某一值的路径(二)

输入一颗二叉树的根节点root和一个整数expectNumber,找出二叉树中结点值的和为expectNumber的所有路径。

2022-04-28 13:24:41 109

原创 [剑指OFFER]之树:JZ82 二叉树中和为某一值的路径(一)

给定一个二叉树root和一个值 sum ,判断是否有从根节点到叶子节点的节点值之和等于 sum 的路径。

2022-04-28 13:24:20 97

原创 [剑指OFFER]之树:JZ54 二叉搜索树的第k个节点

输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度,根节点的深度视为 1 。

2022-04-22 08:59:14 98

原创 [剑指OFFER]之树:JZ7 重建二叉树

给定节点数为 n 的二叉树的前序遍历和中序遍历结果,请重建出该二叉树并返回它的头结点。

2022-04-22 08:58:59 98

原创 [剑指OFFER]之树:JZ26 树的子结构

输入两棵二叉树A,B,判断B是不是A的子结构。(我们约定空树不是任意一个树的子结构)

2022-04-22 08:58:36 111

原创 [剑指OFFER]之树:JZ27 二叉树的镜像

操作给定的二叉树,将其变换为源二叉树的镜像。

2022-04-22 08:58:13 108

原创 [剑指OFFER]之树:JZ32 从上往下打印二叉树

不分行从上往下打印出二叉树的每个节点,同层节点从左至右打印。例如输入{8,6,10,#,#,2,1},如以下图中的示例二叉树,则依次打印8,6,10,2,1(空节点不打印,跳过),请你将打印的结果存放到一个数组里面,返回。

2022-04-22 08:57:53 70

原创 [剑指OFFER]之树:JZ33 二叉搜索树的后序遍历序列

输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则返回 true ,否则返回 false 。假设输入的数组的任意两个数字都互不相同。

2022-04-22 08:57:33 112

原创 [剑指OFFER]之树:JZ77 按之字形顺序打印二叉树

给定一个二叉树,返回该二叉树的之字形层序遍历,(第一层从左向右,下一层从右向左,一直这样交替)

2022-04-21 15:53:15 523

原创 [剑指OFFER]之树:JZ55 二叉树的深度

输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度,根节点的深度视为 1 。

2022-04-21 15:49:45 71

原创 [剑指OFFER]之链表:JZ18 删除链表的节点

给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。返回删除后的链表的头节点。

2022-04-21 12:17:23 353

原创 [剑指OFFER]之链表:JZ76 删除链表中重复的结点

在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表 1->2->3->3->4->4->5 处理后为 1->2->5

2022-04-21 12:15:12 757

原创 [剑指OFFER]之链表:JZ35 复杂链表的复制

输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针random指向一个随机节点),请对此链表进行深拷贝,并返回拷贝后的头结点。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空)。 下图是一个含有5个结点的复杂链表。图中实线箭头表示next指针,虚线箭头表示random指针。为简单起见,指向null的指针没有画出。

2022-04-21 12:11:34 98

原创 [剑指OFFER]之链表:JZ22 链表中倒数最后k个结点

输入一个长度为 n 的链表,设链表中的元素的值为 ai ,返回该链表中倒数第k个节点。

2022-04-21 12:03:18 636

原创 [剑指OFFER]之链表:JZ23 链表中环的入口结点

给一个长度为n链表,若其中包含环,请找出该链表的环的入口结点,否则,返回null。

2022-04-21 12:01:06 497

原创 [剑指OFFER]之链表:JZ52 两个链表的第一个公共结点

输入两个无环的单向链表,找出它们的第一个公共结点,如果没有公共节点则返回空。(注意因为传入数据是链表,所以错误测试数据的提示是用其他方式显示的,保证传入数据是正确的)

2022-04-21 11:45:46 496

原创 [剑指OFFER]之链表:JZ25 合并两个排序的链表

输入两个递增的链表,单个链表的长度为n,合并这两个链表并使新链表中的节点仍然是递增排序的。

2022-04-21 11:37:32 504

原创 [剑指OFFER]之链表:JZ24 反转链表

给定一个单链表的头结点pHead(该头节点是有值的,比如在下图,它的val是1),长度为n,反转该链表后,返回新链表的表头。

2022-04-21 11:33:17 198

原创 [剑指OFFER]之树:JZ7 重建二叉树

使用递归 需要理解树的前序和中序遍历的特点。

2022-04-11 21:17:39 1477

空空如也

空空如也

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

TA关注的人

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