摘要: 0.引言 标准库的strings包是在对字符串操作中很常用的一个内容,基本上包含了go语言对string字符串类型的所有基本操作: 查找、替换、拼接、分割、删除、转换。 下面就依次对常用的方法进行说明以及演示,之后遇到各种对字符串操作的问题也可以快速的找到合适的方法来进行应对。 1.字符串查找 所谓 阅读全文
posted @ 2023-10-09 15:38 WtcSky 阅读(35) 评论(0) 推荐(0) 编辑
摘要: 题目:84. 柱状图中最大的矩形 思路: 实现要确定一个核心问题:包含完整一个柱子的最大矩形要找到这根柱子左侧最后一个高于他的柱子以及右侧最后一个高于他的柱子的位置(等同于左侧第一个小于他,右侧第一个小于他,因为+1 -1就是) 只要get到一个点,比如:30 50 70 80 60 70 40 这 阅读全文
posted @ 2023-09-23 11:24 WtcSky 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 题目:503. 下一个更大元素 II 思路: 总之就是走两次nums,可以拼接,也可以用下面的取余方式。 代码: func nextGreaterElements(nums []int) []int { lens := len(nums) res := make([]int, lens) for i 阅读全文
posted @ 2023-09-22 09:45 WtcSky 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 题目:739. 每日温度 思路: 要寻找任一个元素的右边或者左边第一个比自己大或者小的元素的位置,此时我们就要想到可以用单调栈了 维护一个 栈顶->栈底 由小到大的栈;这样在之后(右侧)遇到更大的数时,就可以得到所有在他前面并且比他小的数,就能获得结果。 初始化默认为0; 代码: func dail 阅读全文
posted @ 2023-09-21 10:19 WtcSky 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 题目:647. 回文子串 思路: 整体上是两种,就是s[i]与s[j]相等,s[i]与s[j]不相等这两种。 当s[i]与s[j]不相等,那没啥好说的了,dp[i][j]一定是false。 当s[i]与s[j]相等时,这就复杂一些了,有如下三种情况 情况一:下标i 与 j相同,同一个字符例如a,当然 阅读全文
posted @ 2023-09-20 11:12 WtcSky 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 题目:583. 两个字符串的删除操作 思路: 还是最长公共子序列,假设最长公共子序列长度是l;那么需要删除的次数是len(s1) - l + len(s2) - l 代码: func minDistance(word1 string, word2 string) int { lens1 := len 阅读全文
posted @ 2023-09-19 10:21 WtcSky 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 题目:392. 判断子序列 思路: 最长子序列的长度是不是len(s) 代码: func isSubsequence(s string, t string) bool { dp := make([][]int,len(s)+1) for i:=0;i<len(dp);i++{ dp[i] = mak 阅读全文
posted @ 2023-09-18 11:10 WtcSky 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 题目:1143. 最长公共子序列 思路: 主要就是两大情况: text1[i - 1] 与 text2[j - 1]相同,text1[i - 1] 与 text2[j - 1]不相同 如果text1[i - 1] 与 text2[j - 1]相同,那么找到了一个公共元素,所以dp[i][j] = d 阅读全文
posted @ 2023-09-16 09:57 WtcSky 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 题目:300. 最长递增子序列 思路: dp[i]状态 取决于 dp[0] - dp[i-1]中小于dp[i]的元素中最大的值+1,即: for j:=0; j <i; j++ { if nums[i] > nums[j]{ dp[i] = max(dp[i], dp[j] + 1) } } 代码: 阅读全文
posted @ 2023-09-15 09:46 WtcSky 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 题目:309. 买卖股票的最佳时机含冷冻期 思路: 具体可以区分出如下四个状态: 状态一:持有股票状态(今天买入股票,或者是之前就买入了股票然后没有操作,一直持有) 不持有股票状态,这里就有两种卖出股票状态 状态二:保持卖出股票的状态(两天前就卖出了股票,度过一天冷冻期。或者是前一天就是卖出股票状态 阅读全文
posted @ 2023-09-14 09:46 WtcSky 阅读(6) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示