二刷主要记录理解不一样的题

一刷地址:day9

今日题目:中等

KMP:困难 => 第一时间想到了使用KMP,但是不太会,只有用常规方法完成

实现 strStr():拼接完两个字符串s之后,取其头尾中间一定能找到s(可直接调用api完成)

class Solution {public boolean repeatedSubstringPattern(String s) {return (s+s).substring(1,2*s.length()-1).contains(s);}
}

重复的子字符串:双指针,暴力实现O(n^2)

class Solution {public int strStr(String haystack, String needle) {int i = 0;int j = 0;while(i < haystack.length() - needle.length() + 1){int t = i;j=0;while(t < haystack.length() && haystack.charAt(t) == needle.charAt(j)){t++;j++;// System.out.println("j="+j);if(j == needle.length()) return i;}i++;           }return -1;}
}

【代码随想录二刷】day9 | 28. 实现 strStr() 459.重复的子字符串相关推荐

  1. 随想录Day9--28. 实现 strStr() , 459.重复的子字符串

    今天的两道题关键在于学习KMP算法.KMP算法运用场景在于一串字符串里面查找是否含有某个子字符串,如"abcdef"里面就含有"cdf"这么个子字符串.先把题目 ...

  2. 代码随想录day9|实现strStr()、重复的子字符串

    实现strStr() 一般的字符串匹配问题我们可以使用KMP算法来处理,当我们搜索文本串和模式串是否匹配的时候,我们先得到模式串的一个前缀表,其中前缀表中存放的内容是模式串的最长相等前后缀.例如文本串 ...

  3. 代码随想录Day09:28. 实现 strStr()、459.重复的子字符串、字符串总结 、双指针回顾

    目录 Day09:28. 实现 strStr().459.重复的子字符串.字符串总结 .双指针回顾 28. 实现 strStr() (一刷只看了思想) 459.重复的子字符串 (本题一刷跳过了) 字符 ...

  4. 【代码随想录二刷】Day23-二叉树-C++

    代码随想录二刷Day23 今日任务 669.修剪二叉搜索树 108.将有序数组转换为二叉搜索树 538.把二叉搜索树转换为累加树 语言:C++ 669. 修剪二叉搜索树 链接:https://leet ...

  5. 【代码随想录二刷】Day21-二叉树-C++

    代码随想录二刷Day21 今日任务 530.二叉搜索树的最小绝对差 501.二叉搜索树中的众数 236.二叉树的最近公共祖先 语言:C++ 530. 二叉搜索树的最小绝对差 链接:https://le ...

  6. 【代码随想录二刷】Day15-二叉树-C++

    代码随想录二刷Day15 今日任务 层序遍历 226.翻转二叉树 101.对称二叉树 语言:C++ 层序遍历 102.二叉树的层序遍历 class Solution {public:vector< ...

  7. 【代码随想录二刷】Day20-二叉树-C++

    代码随想录二刷Day20 今日任务 654.最大二叉树 617.合并二叉树 700.二叉搜索树中的搜索 98.验证二叉搜索树 语言:C++ 654. 最大二叉树 链接:https://leetcode ...

  8. 算法Day8|字符串专题二 剑指 Offer 58 - II. 左旋转字符串,28. 找出字符串中第一个匹配项的下标,459. 重复的子字符串

    剑指 Offer 58 - II. 左旋转字符串 解题思路: 反转区间为前n的子串 反转区间为n到末尾的子串 反转整个字符串 class Solution {public String reverse ...

  9. 402-字符串(题目:剑指Offer58-II.左旋转字符串、 28. 实现 strStr()、459.重复的子字符串)

    题目:剑指Offer58-II.左旋转字符串 class Solution {public:string reverseLeftWords(string s, int n) {string s1(s. ...

最新文章

  1. 【青少年编程(第25周)】隔离终于解除了!
  2. Numpy Scalars(标量)
  3. 一.第一周golang学习:--string解析成基本数据类型
  4. 常用问题排查工具和分析神器,值得收藏
  5. 表白神器(VBS编程)
  6. 实现仿微信朋友圈评论输入框
  7. 关于简单的factorymode
  8. Ubuntu 20.04 创建桌面快捷方式
  9. gae代码_GAE中的Java EE
  10. destoon php版本,Destoon 7.0最新版常见问题解决方法
  11. 企业邮箱怎么写加密邮件,企业邮箱支持吗?
  12. 7-1 电话聊天狂人 (25 分)
  13. 问题与解决_IDEA-> Project Structure -> Artifacts-> ‘项目名‘ module: ‘Web‘ facet resources 显示红色
  14. ubuntu18.04安装MPV视频播放器
  15. 客户关系管理项目——用户登录模块设计
  16. 【概念】同比、环比、定基比
  17. 处理数据时,对数据取对数的意义
  18. 计算机网络---网络体系结构分析
  19. 抽象类含有构造器吗?
  20. C++有符号和无符号之间的转换

热门文章

  1. python的默认编码
  2. ERP一般实施流程/步骤
  3. 解决win10中笔记本插入网线后无法识别的问题
  4. 《乘风破浪的姐姐2》开播大热,姐姐们的.fans相关域名速来抢!
  5. 突触作为神经元的输入
  6. 响应式网站 @media的用法
  7. POJ 1509 Glass Beads 后缀自动机
  8. 三四百左右的蓝牙耳机有什么推荐?三四百左右的蓝牙耳机排行榜
  9. System.Exception:System.Data.OracleClient需要Oracle客户端软件8.1.7或更高版本
  10. 80端口、8080端口和443端口是什么用的