![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode刷题
苗条型男
这个作者很懒,什么都没留下…
展开
-
剑指offer:替换空格
替换空格题目: 请实现一个函数,把字符串 s 中的每个空格替换成"%20"。例子: 输入:s = "We are happy." 输出:"We%20are%20happy."思路: 最简单思路直接使用string的replace()函数,api编程法,但没啥学习意义。另一种思路是首先遍历,找出有cnt个空格,然后把字符串resize到2*cnt+s.size(),最后从后面开始遍历,i指向原数组最后,j指向新数组最后,i遇到空格时,j将接下来三个赋值为%20,知道当i==j时,表明再无空格。如果从前面原创 2020-10-11 23:10:31 · 86 阅读 · 0 评论 -
二维数组的查找
二维数组的查找题目: 在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。例子: 现有矩阵 matrix 如下:[ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6, 9, 16, 22], [10, 13, 14, 17, 24], [18, 21, 23, 26, 30] ]给定 target = 5,返回 true。给定 ta原创 2020-10-11 22:48:27 · 96 阅读 · 1 评论 -
数组中重复的数字
数组中重复的数字题目: 在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。实例 输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3思路1: 利用hash表特性,使用stl库的set模板,当set中没有该数字时,将该数字加入到set当中(标记为true),当set有该数字时,表明有重复,返回该数字。代码1: class Solution {p原创 2020-10-11 22:31:05 · 91 阅读 · 0 评论 -
Leetcode 第九题回文数题解
Leetcode 第九题回文数题解思路遇到这个题目,很多同学容易陷入思维误区,例如先求出数字的位数lenth,然后再依次比较前后的数是否相等,亦或者运用栈,根据入栈与出栈是否相等来判断,以上方法虽然有一定可行性,但复杂度非常高。参考leetcode题解,给出几种解法。C++版直接一步步算出回文数,然后比较,需要注意的点是存储回文数的变量存储空间需要足够大,防止溢出,我这里用的是long ...原创 2020-04-17 21:54:13 · 177 阅读 · 0 评论