代码随想录算法训练营 day 9 第四章 字符串part02 28. 实现 strStr()第一遍完全蒙蔽,不知所云;第二遍突然开始悟了些,大概明白怎么回事了;第三遍很清楚了 KMP算法解决 字符串匹配的问题 (网友A)kmp算法关键在于:在当前对文本串和模式串检索的过程中,若出现了不匹配,如何充分利用已经匹配的部分。 (网友B)匹配到不正确的地方 以前的子串跟上面的子串相等。所以下面模式串子串的最长前缀肯定跟上面文本串最长子串的后缀有匹配,然后我们跳开已经匹配的这部分,从而提升效率。 我的理解:因此,KMP算法非常依赖于:模式串的前后缀有规律; 如果模
代码随想录算法训练营 day7 哈希表part02 需要查 -> 用hash;里面的数字不可预测 ->排除数组;除了记录要查的,还要记录频率 -> 记录2个值 -> 排除set,只能map。使用get()方法。如果'key'存在,返回其值并加1;如果不存在,返回0并加1。dict的使用(增加,查询)和数组基本一样。
代码随想录算法训练营第三天| 链表 | 203. Remove Linked List Elements 707.设计链表 206.反转链表 方法一:常规方法(分别处理头节点和中间节点)方法二:Dummy Head。
代码随想录算法训练营第四天 | 24. Swap Nodes in Pairs,19.删除链表的倒数第N个节点,面试题 02.07. 链表相交 ,142.环形链表II 24. Swap Nodes in Pairs | Link
代码随想录算法训练营第二天 | 977.Squares of a Sorted Array ,209.Minimum Size Subarray Sum,59.Spiral Matrix II Key Words: 滑动窗口(本质也是双指针),双循环但复杂度O(n)方法二:双指针(也是自己想的)方法一:暴力(自己想的)
代码随想录算法训练营第一天 | 704.Binary Search, 27.Remove Element 【代码】代码随想录算法训练营第一天 | 704.Binary Search, 27.Remove Element。