LeetCode | 刷题笔记 | 解题思路
发布日期:2021-07-25 15:44:22
浏览次数:12
分类:技术文章
本文共 900 字,大约阅读时间需要 3 分钟。
题的类别
刷题:写代码前需要明确的点:
- 题目具体表达的含义:
- 序列是有序的?大小写敏感?数据规模?(考虑时间复杂度)
- 边界条件:空串属于处理范围?
- 索引是从0还是1开始的?
- 如果有多解,考虑输出顺序?任意输出一个解? 如果无解,返回0?
- 合理运用断言assert
剑指 offer
03 数组中重复的数字
- 建立一个
bool
类型的数组,下标即为要判断的数字。 - 不存在为
false
,存在一次为true
;重复的话,判断其值是否为true
;
04 二维数组中的查找
- 初始化
vector<vector<int> > nums
二维数组(n*m
大小)。 - 随时判断访问数组
nums[i][j]
是否会越界i<n && j<m
。 - 判断二维数组(若是
[]
或[[]]
)是否为空。 vector
容器判空: 如果当前vector
没有容纳任何元素,则empty()
函数返回true
,否则返回false
。
05 替换空格
- 读取一行写入字符串
str
,getline(cin, str)
;
06 从尾到头打印链表
🌟指针为空时的判断:
if(!ptr){}
10-I 斐波那契数列
- 使用数组存储备用数据。
15 一个数的二进制中1的个数
- 使用&1操作
- 然后二进制右移一位操作
#includeusing namespace std;class Solution { public: int hammingWeight(uint32_t n) { int ans = 0; while(n!=0){ ans += n&1; n >>= 1; } return ans; }};int main(){ int n = 9; int ans = Solution().hammingWeight(n); cout << ans; return 0;}
检查链表中是否有环
- 借助数组,把访问过的结点添加进数组,当访问到一个新结点时,判断数组中是否存在该结点,存在就说明有环。
转载地址:https://blog.csdn.net/qq_34170700/article/details/104372034 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
网站不错 人气很旺了 加油
[***.192.178.218]2024年04月10日 10时31分56秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
半导体二极管和晶体三极管
2019-04-28
基本放大电路(上)
2019-04-28
基本放大电路(下)
2019-04-28
大数据系统和分析技术综述(引用最多)
2019-04-28
大数据流式计算:关键技术及系统实例
2019-04-28
MySQL快速生成大量测试数据1000万
2019-04-28
索引基础
2019-04-28
索引优化
2019-04-28
EXPLAIN详解
2019-04-28
VARCHAR和CHAR类型使用场景
2019-04-28
group by
2019-04-28
group by配合“聚合函数”才有意义
2019-04-28
distinct关键字
2019-04-28
Java代码性能优化常用方法
2019-04-28
01_Influxdb1.7.7的安装配置启动
2019-04-28
vmvare连接linux
2019-04-28
02_Influxdb开启登录认证
2019-04-28
03_Influxdb数据库的简单操作
2019-04-28
04_使用Influxdb自带函数查询
2019-04-28