首页 > 编程语言 >Leetcode练题系列(六): 字符串相关的算法

Leetcode练题系列(六): 字符串相关的算法

时间:2022-11-08 18:12:29浏览次数:56  
标签:Medium 题目 String 算法 练题 Valid Longest Leetcode dp


LeetCode

  英文官网(推荐)

  中文官网

  从2016年大二左右开始就接触算法,起初也简单练习过,但现在工作一段时间后,随着代码水平的提高(​​自我感觉​​),算法水平一直没有进步哈,所以记录下来相关题目,不断练习。

提前说说刷题的心得:

  • 只有算法不薄弱才能拿高工资,如果你想当一个nb的程序员,现在开始努力吧 !
  • 坚持,积少成多。万事开头难

  在题目预览表中,会有题目的编号和题目的难易程度,但是我认为,题目的难易程度并不能真的确定它难还是不难,只是人为对他评价而已,有些难的题确实 Easy。

  因为面试中遇到几次都是LeetCode原题,并且是英文题目,题目的​​标题​​​都是LeetCode​​英文官网​​​的链接地址。​​题目的编号​​​是​​中文​​官网地址。

题目预览表

​String​

  按心情排序,在地铁上看到哪个题目就收藏下来的,然后有时间就做 ! !

#

Title

Difficulty

​718​

​Maximum Length of Repeated Subarray​

Medium

​583​

​Delete Operation for Two Strings​

Medium

​678​

​Valid Parenthesis String​

Medium

​680​

​Valid Palindrome II​

Easy

​686​

​Repeated String Match​

Easy

​20​

​ Valid Parentheses​

Easy

​32​

​ Longest Valid Parentheses ​

Hard

​3​

​ Longest Substring Without Repeating Characters​

Medium

​300​

​ Longest Increasing Subsequence​

Medium

​673​

​ Number of Longest Increasing Subsequence​

Medium

718. [Maximum Length of Repeated Subarray

Leetcode练题系列(六): 字符串相关的算法_官网


状态转移方程:​​dp[i][j]=dp[i-1][j-1]+1​

583. Delete Operation for Two Strings

Leetcode练题系列(六): 字符串相关的算法_链接地址_02


状态转移方程:​​dp[i][j]=Math.max(dp[i-1][j],dp[i][j-1])​​​ ​​dp[i][j]=dp[i-1][j-1]+1​

678. Valid Parenthesis String

Leetcode练题系列(六): 字符串相关的算法_链接地址_03


1.利用两个栈分别存储左括号和星星的坐标,防止出现替换后出现​​**((*​​ 对坐标进行比较

2.start as left or right, if as left, too low while be ignore to 0 ,right must greater than 0

680. Valid Palindrome II

Leetcode练题系列(六): 字符串相关的算法_状态转移_04


注意 s.substring(start, end) start保留 end不保留

Leetcode练题系列(六): 字符串相关的算法_状态转移_05

686. Repeated String Match

Leetcode练题系列(六): 字符串相关的算法_官网_06


do repeat

20. Valid Parentheses

Leetcode练题系列(六): 字符串相关的算法_状态转移_07


use stack

32. Longest Valid Parentheses

Leetcode练题系列(六): 字符串相关的算法_链接地址_08


stack push interval position

3. Longest Substring Without Repeating Characters

Leetcode练题系列(六): 字符串相关的算法_官网_09


care for interval and conversion

300. Longest Increasing Subsequence

Leetcode练题系列(六): 字符串相关的算法_状态转移_10


binary search

673. Number of Longest Increasing Subsequence

Leetcode练题系列(六): 字符串相关的算法_链接地址_11

一些总结

POJ账号 找了半片才想起来 存储备忘:

Leetcode练题系列(六): 字符串相关的算法_状态转移_12

  1. StringBuilder 中的 ​​setLength(0)​​ 可以将Sb从头开始


标签:Medium,题目,String,算法,练题,Valid,Longest,Leetcode,dp
From: https://blog.51cto.com/u_11061155/5833958

相关文章

  • 何为FOC电机算法
    FOC:又名磁场定向控制,是电机控制常用算法。由前两节我们介绍了无刷电机工作原理,讲到了电机控制六步换相法,控制电机旋转。FOC控制方法思想与其一样,在电流可控范围内使用,使用......
  • 算法-26反转部分单向链表
    描述给定一个单链表,在链表中把第 L 个节点到第R个节点这一部分进行反转。输入描述:n表示单链表的长度。val表示单链表各个节点的值。L表示翻转区间的左端点。R表......
  • 【Leetcode】 剑指offer:链表(简单)--Day02
    剑指Offer06.从尾到头打印链表可借助栈。或先遍历列表得到元素数,开辟数组空间倒序填入。剑指Offer24.反转链表可借助栈:classSolution{publicListNodere......
  • 第二十七天 | 回溯算法
    第二十七天,继续回溯算法 39.组合总和classSolution{List<Integer>list=newArrayList<>();List<List<Integer>>ans=newArrayList<>();in......
  • 漏桶算法和令牌桶算法
     一、漏桶算法 漏桶算法原理:水(请求)先进入到漏桶里,人为设置一个最大出水速率,漏桶以<=最大出水速率的速度出水,当水流速度过大会直接溢出(拒绝服务) 因此,此算法的核心......
  • 《数据结构与算法分析(C++语言描述)》
    在看这本书总结了笔记,并分享出来。有问题请及时联系博主:​​Alliswell_WP​​,转载请注明出处。书籍:《数据结构与算法分析(C++语言描述)》作者:LarryNyhoff著、黄达明等译源代......
  • SIFT算法相关资料
    SIFT算法相关资料一、SIFT算法的教程、源码及应用软件1、ubc:DAVIDLOWE---SIFT算法的创始人,两篇巨经典经典的文章​​​http://www.cs.ubc.ca/~lowe/​​​2、cmu:YanKe---......
  • 使用PyTorch实现简单的AlphaZero的算法(1):背景和介绍
    在本文中,我们将在PyTorch中为ChainReaction[2]游戏从头开始实现DeepMind的AlphaZero[1]。为了使AlphaZero的学习过程更有效,我们还将使用一个相对较新的改进,称为“Playout......
  • vue源码分析-diff算法核心原理
    这一节,依然是深入剖析Vue源码系列,上几节内容介绍了VirtualDOM是Vue在渲染机制上做的优化,而渲染的核心在于数据变化时,如何高效的更新节点,这就是diff算法。由于源码中关于d......
  • Leetcode第1684题:统计一致字符串的数目(Count the number of consistent strings)
    解题思路采用位运算的思路不太好理解。但思想就是根据allowed建立一个\(mask\),遍历words中的每个元素的每个字符c,查看\(mask\)的值是否为真。如果存在就返回结果加一。......