- 博客(167)
- 收藏
- 关注
原创 Linux创建新用户并获取sudo权限
sudo su //进入root用户(超级管理员) useradd -m Narnat // 在root/home下创建用户Narnat passwd Narnat //为新用户创建密码(输入密码不会显示)vi /etc/sudoers //进入权限文件添加文件[外链图片转存中…(img-rO4cNxUQ-1694926834119)](img-bmXexkYZ-1694926834044)]
2023-09-17 13:02:37
38
原创 JAVASE 窗口
java提供了很多已经写好了的类供我们使用,而我们没必要去细腻研究它的构成原理,就好比我们让我们编程让机器人动起来,没必要细腻研究机器人每个器件是怎么做出来的一样,而Java提供的这些类就类似控制机器人动起来的接口,我们利用这些方法操纵机器人的移动即可。
2023-09-10 16:56:38
77
原创 重复的DNA序列(力扣)JAVA
给定一个表示 DNA序列 的字符串 s ,返回所有在 DNA 分子中出现不止一次的 长度为 10 的序列(子字符串)。例如,“ACGAATTCCG” 是一个 DNA序列。DNA序列 由一系列核苷酸组成,缩写为 ‘A’, ‘C’, ‘G’ 和 ‘T’.。输入:s = “AAAAACCCCCAAAAACCCCCCAAAAAGGGTTT”输入:s = “AAAAAAAAAAAAA” 输出:[“AAAAAAAAAA”]输出:[“AAAAACCCCC”,“CCCCCAAAAA”]
2023-09-06 18:43:42
302
原创 数组分割(2023省蓝桥杯)n种讨论 JAVA
这题考完蓝桥杯之后,自闭地看着答案整理过一遍,当时一度认为只能用数学方法做,而且当时也意识到自己见识太少,所以这俩月一直在埋头苦刷暂避锋芒。
2023-08-21 23:40:42
706
原创 平方数之和(力扣)双指针 JAVA
给定一个非负整数 c ,你要判断是否存在两个整数 a 和 b,使得 a^2 + b^2 = c。解释:1 * 1 + 2 * 2 = 5。
2023-08-19 17:12:31
185
原创 水果成篮(力扣)双指针滑动窗口 JAVA
采摘的水果应当符合篮子中的水果类型。解释:可以采摘 [2,3,2,2] 这四棵树。如果从第一棵树开始采摘,则只能采摘[1,2] 这两棵树。解释:可以采摘 [1,2,2] 这三棵树。如果从第一棵树开始采摘,则只能采摘 [0,1] 这两棵树。你想要尽可能多地收集水果。输入:fruits = [3,3,3,1,2,1,1,2,3,3,4]解释:可以采摘 [1,2,1,1,2] 这五棵树。输入:fruits = [1,2,3,2,2]输入:fruits = [0,1,2,2]输入:fruits = [1,2,1。
2023-08-19 10:52:37
184
原创 最长重复子数组(力扣)动态规划 JAVA
给两个整数数组 nums1 和 nums2 ,返回 两个数组中 公共的 、长度最长的子数组的长度。输入:nums1 = [1,2,3,2,1], nums2 = [3,2,1,4,7]输入:nums1 = [0,0,0,0,0], nums2 = [0,0,0,0,0]解释:长度最长的公共子数组是 [3,2,1]。
2023-08-18 17:42:37
335
原创 实现图片的动态连续展示 JAVA
要实现动画的流畅展示需要在能展示图片的基础上对图片进行关闭,再切换下一张图片,这要关闭窗口,与延时函数以及while函数的配合使用。
2023-08-17 19:51:07
100
原创 救生艇(力扣)贪心 JAVA
people[i]表示第 i 个人的体重 ,船的数量不限,每艘船可以承载的最大重量为 limit。每艘船最多可同时载两人,但条件是这些人的重量之和最多为 limit。输入:people = [3,2,2,1], limit = 3。输入:people = [3,5,3,4], limit = 5。解释:4 艘船分别载 (3), (3), (4), (5)输入:people = [1,2], limit = 3。解释:3 艘船分别载 (1, 2), (2) 和 (3)解释:1 艘船载 (1, 2)
2023-08-15 19:16:48
167
原创 每日温度(力扣)单调栈 JAVA
给定一个整数数组 temperatures ,表示每天的温度,返回一个数组 answer ,其中 answer[i] 是指对于第 i。输入: temperatures = [73,74,75,71,69,72,76,73]如果气温在这之后都不会升高,请在该位置用 0 来代替。输入: temperatures = [30,40,50,60]输入: temperatures = [30,60,90]输出: [1,1,4,2,1,1,0,0]输出: [1,1,1,0]输出: [1,1,0]
2023-08-14 18:25:14
273
原创 保持城市天际线(力扣)贪心 JAVA
输入:grid = [[3,0,8,4],[2,4,5,7],[9,2,6,3],[0,3,1,0]]然而,增加的建筑物高度 不能影响 从任何主要方向观察城市得到的 天际线。在 不改变 从任何主要方向观测到的城市 天际线 的前提下,返回建筑物可以增加的 最大高度增量总和。我们被允许为 任意数量的建筑物 的高度增加 任意增量(不同建筑物的增量可能不同)。输入:grid = [[0,0,0],[0,0,0],[0,0,0]] 输出:0。解释:增加任何建筑物的高度都会导致天际线的变化。
2023-08-13 18:57:08
342
原创 岛屿的最大面积(力扣)递归 JAVA
岛屿 是由一些相邻的 1 (代表土地) 构成的组合,这里的「相邻」要求两个 1 必须在 水平或者竖直的四个方向上 相邻。解释:答案不应该是 11 ,因为岛屿只能包含水平或垂直这四个方向上的 1。计算并返回 grid 中最大的岛屿面积。如果没有岛屿,则返回面积为 0。输入:grid = [[0,0,0,0,0,0,0,0]]给你一个大小为 m x n 的二进制矩阵 grid。岛屿的面积是岛上值为 1 的单元格的数目。的四个边缘都被 0(代表水)包围着。grid[i][j] 为 0 或 1。
2023-08-13 17:48:40
277
原创 最大交换(力扣)枚举 JAVA
给定一个非负整数,你至多可以交换一次数字中的任意两位。返回你能得到的最大值。给定数字的范围是 [0, 10^8]解释: 交换数字2和数字7。解释: 不需要交换。
2023-08-11 17:17:56
227
原创 石子游戏 dfs + 备忘录 JAVA
如果 Bob 拿走前 3 颗,那么剩下的是 [4,5],Alice 拿走后 5 颗赢得 10 分。如果 Bob 拿走后 5 颗,那么剩下的是 [3,4],Alice 拿走后 4 颗赢得 9 分。假设 Alice 和 Bob 都发挥出最佳水平,当 Alice 赢得比赛时返回 true ,当 Bob 赢得比赛时返回 false。解释: Alice 先开始,只能拿前 5 颗或后 5 颗石子。输入:piles = [3,7,2,3] 输出:true。输入:piles = [5,3,4,5]
2023-08-09 12:06:32
299
原创 预测赢家(力扣)dfs + 备忘录 JAVA
如果他选择 2(或者 1 ),那么玩家 2 可以从 1(或者 2 )和 5 中进行选择。所以,玩家 1 的最终分数为 1 + 2 = 3,而玩家 2 为 5。玩家 1 和玩家 2 轮流进行自己的回合,玩家 1 先手。每一回合,玩家从数组的任意一端取一个数字(即,nums[0] 或 nums[nums.length - 1]),取到的数字将会从数组中移除(数组长度减 1 )。最终,玩家 1(234 分)比玩家 2(12分)获得更多的分数,所以返回 true,表示玩家 1 可以成为赢家。
2023-08-08 18:29:42
273
原创 水壶问题(力扣)数学 JAVA
如果可以得到 targetCapacity 升水,最后请用以上水壶中的一或两个来盛放取得的 targetCapacity 升水。输入: jug1Capacity = 3, jug2Capacity = 5, targetCapacity = 4。输入: jug1Capacity = 2, jug2Capacity = 6, targetCapacity = 5。输入: jug1Capacity = 1, jug2Capacity = 2, targetCapacity = 3。
2023-08-08 17:10:05
340
原创 有效的括号字符串(力扣)动态规划、贪心 JAVA
任何左括号 ‘(’ 必须有相应的右括号 ‘)’。任何右括号 ‘)’ 必须有相应的左括号 ‘(’。左括号 ‘(’ 必须在对应的右括号之前 ‘)’。‘*’ 可以被视为单个右括号 ‘)’ ,或单个左括号 ‘(’ ,或一个空字符串。给你一个只包含三种字符的字符串,支持的字符类型分别是 ‘(’、‘)’ 和 ‘*’。请你检验这个字符串是否为有效字符串,如果是有效字符串返回true。s[i] 为 ‘(’、‘)’ 或 ‘*’输入:s = “(*))”输入:s = “(*)”输入:s = “()”
2023-08-03 19:19:21
283
原创 省份数量(力扣)深度优先 JAVA
给你一个 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 17:56:13
252
原创 森林中的兔子(力扣)数学思维 JAVA
提问其中若干只兔子 “还有多少只兔子与你(指被提问的兔子)颜色相同?的兔子不会是红色,否则他们的回答会相互矛盾。设回答了 “2” 的兔子为蓝色。只蓝色兔子的回答没有包含在数组中。因此森林中兔子的最少数量是 5 只:3 只回答的和 2 只没有回答的。解释: 两只回答了 “1” 的兔子可能有相同的颜色,设为红色。中,其中 answers[i] 是第 i 只兔子的回答。给你数组 answers ,返回森林中兔子的最少数量。输入:answers = [10,10,10]输入:answers = [1,1,2]
2023-07-31 19:03:13
263
原创 三步问题(力扣)n种解法 JAVA
有个小孩正在上楼梯,楼梯有n阶台阶,小孩一次可以上1阶、2阶或3阶。实现一种方法,计算小孩有多少种上楼梯的方式。结果可能很大,你需要对结果模1000000007。n范围在[1, 1000000]之间。
2023-07-29 22:38:30
332
2
原创 砖墙(力扣)Map + 思维 JAVA
如果你画的线只是从砖块的边缘经过,就不算穿过这块砖。你不能沿着墙的两个垂直边缘之一画线,这样显然是没有穿过一块砖的。你的面前有一堵矩形的、由 n 行砖块组成的砖墙。每一行砖块的宽度之和相等。是一个代表从左至右每块砖的宽度的数组。你需要找出怎样画才能使这条线 穿过的砖块数量最少 ,并且返回 穿过的砖块数量。给你一个二维数组 wall ,该数组包含这堵墙的相关信息。其中,wall[i]对于每一行 i ,sum(wall[i]) 是相同的。你现在要画一条 自顶向下 的、穿过 最少。
2023-07-29 18:55:36
314
原创 最小时间差(力扣)排序 + 思维 JAVA
给定一个 24 小时制(小时:分钟 “HH:MM”)的时间列表,找出列表中任意两个时间的最小时间差并以分钟数表示。输入:timePoints = [“00:00”,“23:59”,“00:00”] 输出:0。输入:timePoints = [“23:59”,“00:00”] 输出:1。timePoints[i] 格式为 “HH:MM”
2023-07-28 18:45:39
258
原创 最优除法(力扣)数学 JAVA
1000/((100/10)/2) = 200 但是,以下加粗的括号 “1000/((100/10)/2)” 是冗余的,例如, [2,3,4] -> 2 / 3 / 4。因为他们并不影响操作的优先级,所以你需要返回 “1000/(100/10/2)”。例如,nums = [2,3,4],我们将求表达式的值 “2/3/4”。解释: (2/(3/4)) = 8/3 = 2.667。输出: “1000/(100/10/2)”解释: 1000/(100/10/2) =输出: “2/(3/4)”
2023-07-28 17:38:06
327
原创 行星碰撞(力扣)栈 JAVA
找出碰撞后剩下的所有行星。碰撞规则:两个行星相互碰撞,较小的行星会爆炸。输入:asteroids = [10,2,-5] 输出:[10] 解释:2 和 -5 发生碰撞后剩下 -5。对于数组中的每一个元素,其绝对值表示行星的大小,正负表示行星的移动方向(正表示向右移动,负表示向左移动)。输入:asteroids = [5,10,-5] 输出:[5,10] 解释:10 和 -5 碰撞后只剩下 10。输入:asteroids = [8,-8] 输出:[] 解释:8 和 -8 碰撞后,两者都发生爆炸。
2023-07-27 19:00:40
225
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人