题目思路这题我只能说想了没多久就想出来了,一开始看到这个题目的时候下意识想要用数组分组然后再合并的一个做法,但是想了一想那样时间复杂度好像有点高来着,这题应该有一些更优的做法,然后就在纸上自己捣鼓了一下,发现这个问题其实用循环链表就能很好的去解决了,时间复杂度也能到 O(qi) 的程度。首先就...
DES 算法的具体原理首先我们需要知道 DES 加密解密算法的具体原理以及流程,我们才能在 Python 中将其实现。DES 加密解密其实就是一种分组密码的实现,并且通过多轮代换以及异或操作最终完成加密,每次加密都有 8 个 S 合将其进行分组加密,详细可参见清华大学出版社的《现代密码学》第五...
跳跃游戏 II - C++力扣45题题目链接:https://leetcode.com/problems/jump-game-ii/description/解题思路这题算是中等难度吧,就是一眼能看出来解决方法的程度,但是优化上还是得多费一点脑子,下面的代码也不是最优解。基本上是一眼能看出来用 ...
水果成篮 - C++力扣904题题目链接:https://leetcode.com/problems/fruit-into-baskets/description/解题思路这题其实也是一个类似于滑动窗口的问题,但是其实还是模拟一边就能过,难度算是中等偏下吧,没什么太大的难点。首先我们先弄一个哈...
重新排列数组 - C++力扣1470题题目链接:https://leetcode.com/problems/shuffle-the-array/解题思路老实说,这题一看到就让人丧失了对其进行优化的心思了,随便写写都能过,完完全全入门级的题目,不多做解释了,直接上代码。完整代码:class So...
找到字符串中所有字母异位词 - C++力扣438题题目链接:https://leetcode.com/problems/find-all-anagrams-in-a-string/description/解题思路嘛,这题其实跟昨天的 567 题是大同小异,这区别小的我直接把那题的代码改一下就过...
字符串的排列 - C++力扣567题题目链接:https://leetcode.com/problems/permutation-in-string/description/解题思路这题就是考验滑动窗口算法,难度算是中等偏下吧,很多人一开始认为要用字符串匹配,但是仔细阅读题目之后你会发现如果你...
N 字形变换 - C++力扣6题题目链接:https://leetcode.com/problems/zigzag-conversion/description/解题思路这题就是纯粹的模拟题,难度算是中等偏下吧,这题其实也没什么好说的,就是把上下的方向搞懂了就行,直接上代码吧。完整代码:cla...
验证外星语词典 - C++力扣953题题目链接:https://leetcode.com/problems/verifying-an-alien-dictionary/description/解题思路字典序比较其实就是入门级问题,就是加了个重定义顺序而已。这题有手就行。首先我们先把字典序记录下...