Java基础
文章平均质量分 52
小江~~~
普通计算机专业的学生
展开
-
gateway动态路由和普通路由+负载均衡,借助eureka
spring-cloud-gatewaygateway动态路由和普通路由+负载均衡,借助eureka原创 2023-08-23 23:00:02 · 1189 阅读 · 0 评论 -
208. 实现 Trie (前缀树)
是一种树形数据结构,用于高效地存储和检索字符串数据集中的键。这一数据结构有相当多的应用情景,例如自动补完和拼写检查。// 返回 False。// 返回 True。// 返回 True。// 返回 True。(发音类似 "try")或者说。原创 2023-08-13 15:13:40 · 445 阅读 · 0 评论 -
433. 最小基因变化
记录了所有有效的基因变化,只有基因库中的基因才是有效的基因序列。(变化后的基因必须位于基因库。一次基因变化就意味着这个基因序列中的一个字符发生了变化。基因序列可以表示为一条由 8 个字符组成的字符串,其中每个字符都是。所需的最少变化次数。如果无法完成此基因变化,返回。默认是有效的,但是它并不一定会出现在基因库中。假设我们需要调查从基因序列。,请你找出并返回能够使。原创 2023-08-11 16:27:03 · 126 阅读 · 0 评论 -
207. 课程表
先修课程按数组 prerequisites 给出,其中 prerequisites[i] = [ai, bi] ,表示如果要学习课程 ai 则 必须 先学习课程 bi。学习课程 1 之前,你需要先完成课程 0;并且学习课程 0 之前,你还应先完成课程 1。输入:numCourses = 2, prerequisites = [[1,0],[0,1]]例如,先修课程对 [0, 1] 表示:想要学习课程 0 ,你需要先完成课程 1。学习课程 1 之前,你需要完成课程 0。原创 2023-08-05 14:59:03 · 95 阅读 · 0 评论 -
399. 除法求值
输入:equations = [["a","b"],["b","c"],["bc","cd"]], values = [1.5,2.5,5.0], queries = [["a","c"],["c","b"],["bc","cd"],["cd","bc"]]输入:equations = [["a","b"],["b","c"]], values = [2.0,3.0], queries = [["a","c"],["b","a"],["a","e"],["a","a"],["x","x"]]原创 2023-08-04 15:44:31 · 85 阅读 · 0 评论 -
547. 省份数量
给你一个 n x n 的矩阵 isConnected ,其中 isConnected[i][j] = 1 表示第 i 个城市和第 j 个城市直接相连,而 isConnected[i][j] = 0 表示二者不直接相连。如果城市 a 与城市 b 直接相连,且城市 b 与城市 c 直接相连,那么城市 a 与城市 c 间接相连。输入:isConnected = [[1,1,0],[1,1,0],[0,0,1]]输入:isConnected = [[1,0,0],[0,1,0],[0,0,1]]原创 2023-08-02 22:36:31 · 151 阅读 · 0 评论 -
133. 克隆图
例如,第一个节点值为 1(val = 1),第二个节点值为 2(val = 2),以此类推。给定节点将始终是图中的第一个节点(值为 1)。由于图是无向的,如果节点 p 是节点 q 的邻居,那么节点 q 也必须是节点 p 的邻居。图中的每个节点都包含它的值 val(int) 和其邻居的列表(list[Node])。输入:adjList = [[2,4],[1,3],[2,4],[1,3]]输出:[[2,4],[1,3],[2,4],[1,3]]节点 1 的值是 1,它有两个邻居:节点 2 和 4。原创 2023-07-31 19:31:11 · 127 阅读 · 0 评论 -
199. 二叉树的右视图
给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。输入: [1,2,3,null,5,null,4]二叉树的节点个数的范围是 [0,100]输入: [1,null,3]输出: [1,3,4]原创 2023-07-28 13:30:21 · 168 阅读 · 0 评论 -
236. 二叉树的最近公共祖先
百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。输入:root = [3,5,1,6,2,0,8,null,null,7,4], p = 5, q = 1。输入:root = [3,5,1,6,2,0,8,null,null,7,4], p = 5, q = 4。因为根据定义最近公共祖先节点可以为节点本身。输入:root = [1,2], p = 1, q = 2。原创 2023-07-27 15:24:03 · 37 阅读 · 0 评论 -
117. 填充每个节点的下一个右侧节点指针 II
解释:给定二叉树如图 A 所示,你的函数应该填充它的每个 next 指针,以指向其下一个右侧节点,如图 B 所示。链接:https://leetcode.cn/problems/populating-next-right-pointers-in-each-node-ii。填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为 NULL。输入:root = [1,2,3,4,5,null,7]输出:[1,#,2,3,#,4,5,7,#]原创 2023-07-24 21:56:37 · 26 阅读 · 0 评论 -
106. 从中序与后序遍历序列构造二叉树
给定两个整数数组 inorder 和 postorder ,其中 inorder 是二叉树的中序遍历, postorder 是同一棵树的后序遍历,请你构造并返回这颗 二叉树。输入:inorder = [9,3,15,20,7], postorder = [9,15,7,20,3]输入:inorder = [-1], postorder = [-1]输出:[3,9,20,null,null,15,7]postorder 保证是树的后序遍历。inorder 保证是树的中序遍历。原创 2023-07-23 14:48:03 · 59 阅读 · 0 评论 -
105. 从前序与中序遍历序列构造二叉树
给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。输入: preorder = [3,9,20,15,7], inorder = [9,3,15,20,7]输入: preorder = [-1], inorder = [-1]输出: [3,9,20,null,null,15,7]preorder 保证 为二叉树的前序遍历序列。inorder 保证 为二叉树的中序遍历序列。原创 2023-07-22 22:12:37 · 39 阅读 · 0 评论 -
146. LRU 缓存
int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的值,否则返回 -1。// 该操作会使得关键字 2 作废,缓存是 {1=1, 3=3}// 该操作会使得关键字 1 作废,缓存是 {4=4, 3=3}链接:https://leetcode.cn/problems/lru-cache。// 缓存是 {1=1, 2=2}// 返回 -1 (未找到)// 返回 -1 (未找到)lRUCache.put(1, 1);// 缓存是 {1=1}原创 2023-07-22 00:23:10 · 30 阅读 · 0 评论 -
82. 删除排序链表中的重复元素 II
给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字。返回 已排序的链表。输入:head = [1,2,3,3,4,4,5]输入:head = [1,1,1,2,3]链表中节点数目在范围 [0, 300] 内。题目数据保证链表已经按升序 排列。输出:[1,2,5]原创 2023-07-19 15:52:56 · 55 阅读 · 0 评论 -
138. 复制带随机指针的链表
新节点的 next 指针和 random 指针也都应指向复制链表中的新节点,并使原链表和复制链表中的这些指针能够表示相同的链表状态。输入:head = [[7,null],[13,0],[11,4],[10,2],[1,0]]输出:[[7,null],[13,0],[11,4],[10,2],[1,0]]输入:head = [[3,null],[3,0],[3,null]]输出:[[3,null],[3,0],[3,null]]输入:head = [[1,1],[2,1]]输出:[[1,1],[2,1]]原创 2023-07-17 12:02:44 · 29 阅读 · 0 评论 -
71. 简化路径
任意多个连续的斜杠(即,'//')都被视为单个斜杠 '/'。给你一个字符串 path ,表示指向某一文件或目录的 Unix 风格 绝对路径 (以 '/' 开头),请你将其转化为更加简洁的规范路径。此外,路径仅包含从根目录到目标文件或目录的路径上的目录(即,不含 '.' 或 '..')。path 由英文字母,数字,'.','/' 或 '_' 组成。输入:path = "/a/./b/../../c/"输入:path = "/home//foo/"输入:path = "/../"输出:"/home/foo"原创 2023-07-13 14:13:14 · 78 阅读 · 0 评论 -
452. 用最少数量的箭引爆气球
输入:points = [[10,16],[2,8],[1,6],[7,12]]输入:points = [[1,2],[3,4],[5,6],[7,8]]输入:points = [[1,2],[2,3],[3,4],[4,5]]-在x = 11处发射箭,击破气球[10,16]和[7,12]。- 在x = 2处发射箭,击破气球[1,2]和[2,3]。- 在x = 4处射出箭,击破气球[3,4]和[4,5]。-在x = 6处射出箭,击破气球[2,8]和[1,6]。解释:每个气球需要射出一支箭,总共需要4支箭。原创 2023-07-12 11:58:34 · 28 阅读 · 0 评论 -
57. 插入区间
输入:intervals = [[1,2],[3,5],[6,7],[8,10],[12,16]], newInterval = [4,8]输入:intervals = [[1,3],[6,9]], newInterval = [2,5]输入:intervals = [[1,5]], newInterval = [2,3]解释:这是因为新的区间 [4,8] 与 [3,5],[6,7],[8,10] 重叠。输出:[[1,2],[3,10],[12,16]]输出:[[1,5],[6,9]]输出:[[1,5]]原创 2023-07-11 15:00:31 · 32 阅读 · 0 评论 -
56. 合并区间
以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi]。输入:intervals = [[1,3],[2,6],[8,10],[15,18]]解释:区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].解释:区间 [1,4] 和 [4,5] 可被视为重叠区间。输入:intervals = [[1,4],[4,5]]输出:[[1,6],[8,10],[15,18]]输出:[[1,5]]原创 2023-07-10 14:49:23 · 37 阅读 · 0 评论 -
189. 轮转数组&原版+改进版 解题思路
输入: nums = [1,2,3,4,5,6,7], k = 3。输入:nums = [-1,-100,3,99], k = 2。向右轮转 1 步: [7,1,2,3,4,5,6]向右轮转 2 步: [6,7,1,2,3,4,5]向右轮转 3 步: [5,6,7,1,2,3,4]向右轮转 1 步: [99,-1,-100,3]向右轮转 2 步: [3,99,-1,-100]输出: [5,6,7,1,2,3,4]输出:[3,99,-1,-100]原创 2023-06-18 21:26:57 · 36 阅读 · 1 评论 -
java Map集合用stream流的方式遍历
【代码】java Map集合用stream流的方式遍历。原创 2023-06-11 16:42:56 · 1989 阅读 · 1 评论 -
java 自定义排序Comparable接口
【代码】java 自定义排序Comparable接口。原创 2023-05-31 14:57:01 · 124 阅读 · 1 评论