摘要: LeetCode 28. 实现 strStr() 牢记一点:next[i] 元素表示【0,i】子串的最长相等前后缀个数,也是模式串与主串匹配不相等时模式串的下一个比较索引 分析1.0 前缀是指不包含最后一个字符的所有以第一个字符开头的连续子串。 后缀是指不包含第一个字符的所有以最后一个字符结尾的连续 阅读全文
posted @ 2023-01-20 15:07 cupxu 阅读(29) 评论(0) 推荐(1)
摘要: 基础知识 // String -> char[] char[] string=s.toCharArray(); // char[] -> String String.valueOf(string) 注意replace replaceAll区别,都是全局匹配替换,不过replaceAll是正则匹配 L 阅读全文
posted @ 2023-01-19 16:21 cupxu 阅读(27) 评论(0) 推荐(0)
摘要: LeetCode 454.四数相加II 分析1.0 这个最直接暴力法,不过过于暴力了,害怕.jpg 失误 读题理解失误:题目要求的是四元组的个数,读完题到我这里成了输出四元组,悲哉 分析2.0 记录有多少个可能为0的四元组就行了,两层for循环每次的下标索引都是不一样的,于是遍历前两组将元素和加入M 阅读全文
posted @ 2023-01-18 23:08 cupxu 阅读(30) 评论(0) 推荐(0)
摘要: 基础知识 哈希 常见的结构(不要忘记数组) 数组 set (集合) map(映射) 注意 哈希冲突 哈希函数 LeetCode 242 分析1.0 HashMap<Character, Integer> 记录字符元素及其个数,再以字符序列对key进行排序,比较两个Map是否一致或者是遍历Map1的时 阅读全文
posted @ 2023-01-17 12:18 cupxu 阅读(46) 评论(0) 推荐(0)
摘要: 基础知识 记录一下栈实现及操作 public class ArrayDequeStack { public void main() { ArrayDeque stack = new ArrayDeque(); // 大小 System.out.println(stack.size()); // 依次 阅读全文
posted @ 2023-01-16 11:30 cupxu 阅读(42) 评论(0) 推荐(0)
摘要: 基础知识 数据结构初始化 // 链表节点定义 public class ListNode { // 结点的值 int val; // 下一个结点 ListNode next; // 节点的构造函数(无参) public ListNode() { } // 节点的构造函数(有一个参数) public 阅读全文
posted @ 2023-01-13 23:11 cupxu 阅读(53) 评论(0) 推荐(0)
摘要: leetcode 977 分析1.0: 要求对平方后的int排序,而给定数组中元素可正可负,一开始有思维误区,觉得最小值一定在0左右徘徊,但数据可能并不包含0;遂继续思考,发现元素分布有三种情况,递增、递减以及类似二元凹函数,而题目要求O(n)的时间复杂度,不可能采用十大排序算法,于是接下来打算寻找 阅读全文
posted @ 2023-01-12 22:14 cupxu 阅读(63) 评论(0) 推荐(0)
摘要: 前言 考研结束半个月了,自己也简单休整了一波,估了一下分,应该能进复试,但还是感觉不够托底。不管怎样,要把代码能力和八股捡起来了,正好看到卡哥有这个算法训练营,遂果断参加,为机试和日后求职打下一个基础。 我之前断断续续地刷过一些LeetCode,但是不成体系,数量也少得可怜,才区区50+,在寻找暑期 阅读全文
posted @ 2023-01-11 22:44 cupxu 阅读(199) 评论(0) 推荐(0)