![](https://img-blog.csdnimg.cn/20190927151043371.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构与算法
数据结构与算法
SoulNov23
那些我们说着永远不分离的朋友,早已散落在天涯,时光的洪流中,我们总会长大。
展开
-
DP动态规划之最长回文子串
现在的求解过程就是,基于已知的1,2条件,往后循环推导,同时找到推导过程中长度最大的字符串。给你一个字符串 s,找到 s 中最长的回文子串。原创 2022-09-13 19:28:46 · 324 阅读 · 1 评论 -
SW滑动窗口之无重复字符的最长子串
执行结果不是很理想,我们其实可以看到左指针和右指针分别都遍历了一次字符串,如果我们只循环一次保存每个字符的位置,碰到重复的字符只更新位置,可以少遍历一次。给定一个字符串s,请你找出其中不含有重复字符的最长子串的长度。执行用时确实提高了不少。原创 2022-09-09 21:23:41 · 241 阅读 · 0 评论 -
DP动态规划之斐波那契数
https://leetcode-cn.com/problems/fibonacci-number/F(0) = 0,F(1) = 1F(n) = F(n - 1) + F(n - 2),其中 n > 1在学校的时候课本上用这个题目介绍了递归,我们看下int fib(int n) { if (n < 2) { return n; } return fib(n - 1) + fib(n - 2);}在递归的过程中,我们对fib(n)都进行了两次原创 2021-10-07 19:27:29 · 187 阅读 · 0 评论 -
DFA有限状态自动机之有效数字
https://leetcode-cn.com/problems/valid-number/根据题目给的算法描述,定义字符类型,用函数返回当前字符类型,挖掘出所有的状态定义出来enum State{ state_begin, state_integer_sign, // 整数符号 state_integer, // 整数 state_point_without_integer, // 前面没有数字的小数点 st原创 2021-09-04 20:44:26 · 207 阅读 · 0 评论 -
DFA有限状态自动机之字符串转换整数(atoi)
for循环字符串的时候,有4种类型的字符情况,我们可以定义在当前所处状态下,遇到space类型字符正常的话就流转到state_space,遇到sign类型字符正常的话就流转到state_sign,遇到number类型字符正常的话就流转到state_number,其它所有异常情况直接结束流转到state_end,通过表格穷举循环遍历4类字符时所有组合的情况下的状态。这样做的好处是,我们在定义有限状态自动机的穷举时,可以更简单,只需要列出所有的正常情况就行了。我们可以看看只穷举正常情况的表格。原创 2021-09-02 22:05:20 · 362 阅读 · 0 评论 -
URL安全的Base64算法
base64是取3个字节(24位)的数据强行组成4个字节(32位)的数据做为一个分组,24位分成4个字节的话,每个字节分到6位,然后前面补两位0,然后这个字节的值位索引去base64表找值。1. 因为前面补两个0,那么只有6位来算索引,最长就是2^6=64,所以base64表只有64个。2.因为每4个字节一个分组,所以base64后的长度肯定是4的倍数。3.因为不是所有的字符串都能...原创 2019-09-02 20:40:27 · 896 阅读 · 0 评论