- 博客(98)
- 收藏
- 关注
原创 最长上升子序列(LIS)——线性DP算法
这天蓝桥国王给他安排了 𝑁N 个对手,他们的战力值分别为 𝑎1,𝑎2,...,𝑎𝑛a1,a2,...,an,且按顺序阻挡在小明的前方。对于这些对手小明可以选择挑战,也可以选择避战。第二行包含 𝑁N 个整数 𝑎1,𝑎2,...,𝑎𝑛a1,a2,...,an,分别表示对手的战力值。身为高傲的骑士,小明从不走回头路,且只愿意挑战战力值越来越高的对手。输入第一行包含一个整数 𝑁N,表示对手的个数。小明是蓝桥王国的骑士,他喜欢不断突破自我。请你算算小明最多会挑战多少名对手。输出一行整
2025-04-09 15:47:54
161
原创 代码块知识点
/(1) 进行类的加载//1.1 先加载 父类 A02 1.2 再加载 B02//(2) 创建对象//2.1 从子类的构造器开始new B02();//对象class A02 { //父类static {System.out.println("A02 的一个静态代码块..");//(2)System.out.println("A02 的第一个普通代码块..");//(5)//普通属性的初始化//(1)return 10;
2025-04-01 03:00:23
302
原创 JAVA项目——房屋出租
表示只能输入小于8字符,如果用户直接回车表示不修改信息,默认 ""。设计一个 id 自增长的机制,然后更新newHouse的id。
2025-03-31 23:57:51
271
原创 多态数组知识点
Student类:Teacher类:PloyArray类:注:1.persons[i] instanceof Student;判断person[i] 的运行类型是不是Student。2.Student student = (Student) persons[i]; 是向下转型。3.Student student = (Student) persons[i]; student.study();可以写成((Student)person[i]).study();
2025-03-31 14:35:28
184
原创 动态绑定机制
执行这个,getI从B中找,有(return i;),因为public int i=20;的运行过程是B,B中没有。所以return 20+10;
2025-03-31 03:41:16
152
原创 Leetcode—1005. K 次取反后最大化的数组和(贪心算法)
给你一个整数数组nums和一个整数kinums[i]-nums[i]重复这个过程恰好k次。可以多次选择同一个下标i。以这种方式修改数组后,返回数组。5选择下标 1 ,nums 变为 [4,-2,3]。6选择下标 (1, 2, 2) ,nums 变为 [3,1,0,2]。13选择下标 (1, 4) ,nums 变为 [2,3,-1,5,4]。
2025-03-26 20:10:03
187
原创 Leetcode--151. 反转字符串中的单词(字符串+双指针---基础算法)
给你一个字符串s,请你反转字符串中的顺序。是由非空格字符组成的字符串。s中使用至少一个空格将字符串中的分隔开。返回顺序颠倒且之间用单个空格连接的结果字符串。输入字符串s中可能会存在前导空格、尾随空格或者单词间的多个空格。返回的结果字符串中,单词间应当仅用单个空格分隔,且不包含任何额外的空格。反转后的字符串中不能存在前导空格和尾随空格。如果两个单词间有多余的空格,反转后的字符串需要将单词间的空格减少到仅有一个。' 's。
2025-03-23 01:18:47
348
原创 Leetcode—541. 反转字符串 II(基础算法)
给定一个字符串s和一个整数k,从字符串开头算起,每计数至2k个字符,就反转这2k字符中的前k个字符。
2025-03-22 18:25:55
287
原创 Leetcode—344. 反转字符串(字符串+双指针—基础算法/STL库的调用)
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。不要给另外的数组分配额外的空间,你必须、使用 O(1) 的额外空间解决这一问题。
2025-03-22 17:51:13
266
原创 Leetcode—18. 四数之和(双指针+哈希表+剪枝处理/DFS算法—基础算法)
给你一个由n个整数组成的数组nums,和一个目标值target。请你找出并返回满足下述全部条件且的四元组bcd你可以按返回答案。
2025-03-22 17:10:45
407
原创 Leetcode—15. 三数之和(哈希表—基础算法)
给你一个整数数组nums,判断是否存在三元组满足i!= ji!= k且j!= k,同时还满足。请你返回所有和为0且不重复的三元组。答案中不可以包含重复的三元组。不同的三元组是 [-1,0,1] 和 [-1,-1,2]。注意,输出的顺序和三元组的顺序并不重要。[]唯一可能的三元组和不为 0。[[0,0,0]]唯一可能的三元组和为 0。
2025-03-22 16:01:35
755
原创 Leetcode—454. 四数相加 II(STL的map AND 基础算法)
给你四个整数数组nums1nums2nums3和nums4,数组长度都是n,请你计算有多少个元组2两个元组如下:1。
2025-03-22 03:24:29
399
原创 Leetcode—1. 两数之和(STL库的map应用 AND 基础算法)
给定一个整数数组nums和一个整数目标值target,请你在该数组中找出target的那整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案,并且你不能使用两次相同的元素。你可以按任意顺序返回答案。[0,1]因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。[1,2][0,1]
2025-03-22 03:02:12
184
原创 Leetcode—349. 两个数组的交集(字符串算法 AND STL的set库)
给定两个数组nums1和nums2,返回它们的 交集。输出结果中的每个元素一定是的。我们可以。[2][9,4][4,9] 也是可通过的。
2025-03-22 02:27:14
273
原创 Leetcode—242. 有效的字母异位词(字符串算法)
给定两个字符串s和t,编写一个函数来判断t是否是s的 字母异位词。truefalset如果输入字符串包含 unicode 字符怎么办?你能否调整你的解法来应对这种情况?
2025-03-22 01:39:18
155
原创 Leetcode—209. 长度最小的子数组(基础算法—双指针)
给定一个含有n个正整数的数组和一个正整数target找出该数组中满足其总和大于等于target的长度最小的,并返回其长度如果不存在符合条件的子数组,返回0。2子数组[4,3]是该条件下的长度最小的子数组。10O(n)
2025-03-21 14:25:31
320
原创 leetcode-27 移除元素(基础算法—双指针)
给你一个数组nums和一个值val,你需要移除所有数值等于val的元素。元素的顺序可能发生改变。然后返回nums中与val不同的元素的数量。假设nums中不等于val的元素数量为knumsnumskvalnumsnumsk评测机将使用以下代码测试您的解决方案:// 输入数组// 要移除的值// 长度正确的预期答案。// 它以不等于 val 的值排序。// 调用你的实现// 排序 nums 的前 k 个元素i++) {如果所有的断言都通过,你的解决方案将会。
2025-03-21 14:03:12
382
原创 LCA算法(最近公共祖先)
如果x和y的数的深度相等,则执行for循环里面的内容,执行到LCA的下一层,然后在执行return f[x][0],f[x][0]相当于在走一步,也就到达了他们的LCA处!的值 ,ST表里面的值表示。
2025-03-20 15:21:44
457
原创 LCS——线性DP问题
第三个状态转移方程:当Si 为:abcd, Sj为:acde;他们最后一个字母不同,则要比较前一个字母;f[i-1][j] 表示:Si 为:abc, Sj为:acde;f[i][j-j] 表示:Si 为:abcd, Sj为:acd;比较他们二个的最大值,f[i-1][j]最大值表示2,f[i][j-1]最大值表示3,所以发 f[i][j]=3;
2025-03-19 18:07:13
143
原创 洛谷—P11668 [USACO25JAN] It‘s Mooin‘ Time II B(枚举基础算法)
Farmer John 正在试图向 Elsie 描述他最喜欢的 USACO 竞赛,但她很难理解为什么他这么喜欢它。他说「竞赛中我最喜欢的部分是 Bessie 说 『现在是哞哞时间』并在整个竞赛中一直哞哞叫」。Elsie 仍然不理解,所以 Farmer John 将竞赛以文本文件形式下载,并试图解释他的意思。竞赛被定义为一个包含 $N$($1\le N\le 10^6$)个整数的数组 $a_1, a_2, \dots, a_N$($1\le a_i\le N$)。
2025-03-18 18:50:09
467
原创 方法重写/覆盖(override)
注:上面的代码,父类的m1和m2的返回类型都为String,而子类的m1的返回类型为String,通过上面的定义可以,但是。~Dog(子类)的m2写错了,应该为。(Object是最大的类)
2025-03-18 02:18:22
264
原创 P11451 [USACO24DEC] It‘s Mooin‘ Time B(枚举算法)
Farmer John 正在试图向 Elsie 描述他最喜欢的 USACO 竞赛,但她很难理解为什么他这么喜欢它。他说「竞赛中我最喜欢的部分是 Bessie 说 『现在是哞哞时间』并在整个竞赛中一直哞哞叫」。Elsie 仍然不理解,所以 Farmer John 将竞赛以文本文件形式下载,并试图解释他的意思。竞赛被定义为一个长度为 $N$($3≤N≤20000$)的小写字母字符串。
2025-03-17 14:45:02
783
原创 位运算(基础算法)
按位与AND( & )只有当两个位都为1时,结果才为1,否则为0。结果不会变大按位或 OR( | )只有当两个位中有一个为1时,结果才为1,否则为0。结果不会变小按位异或 XOR ( ^ )只有当两个位不同时,结果才为1,否则为0。结果可能变大,变小,有可能不变按位取反( ~ )通常用于无符号整数(unsigned int/long long)
2025-03-17 00:03:32
184
原创 ACwing—01背包(暴力bfs+dp+递归+记忆化搜索算法)
有 N件物品和一个容量是 V 的背包。每件物品只能使用一次。第 i 件物品的体积是 vi,价值是 wi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。
2025-03-14 12:02:24
408
原创 ACwing—跳台阶(bfs+dp+递归+记忆化搜索算法)
一个楼梯共有 n级台阶,每次可以走一级或者两级,问从第0级台阶走到第n级台阶一共有多少种方案。共一行,包含一个整数 n共一行,包含一个整数,表示方案数。1≤n≤45。
2025-03-14 01:45:57
1075
原创 洛谷—P2895 [USACO08FEB] Meteor Shower S(BFS/DFS算法)
贝茜听说一场特别的流星雨即将到来:这些流星会撞向地球,并摧毁它们所撞击的任何东西。她为自己的安全感到焦虑,发誓要找到一个安全的地方(一个永远不会被流星摧毁的地方)。如果将牧场放入一个直角坐标系中,贝茜现在的位置是原点,并且,贝茜不能踏上一块被流星砸过的土地。根据预报,一共有 M 颗流星 (1≤M≤50,000) 会坠落在农场上,其中第 i 颗流星会在时刻 Ti(0≤Ti≤1000)砸在坐标为 (Xi,Yi)(0≤Xi≤300,0≤Yi≤300) 的格子里。
2025-03-12 01:45:33
198
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人