编程小技巧
来源:互联网 发布:儿童学编程 编辑:程序博客网 时间:2024/06/04 18:15
1 判断奇数:if(n & 0x1) 或用用 x % 2 != 0,不要用 x % 2 == 1,因为x可能是负 数。
2 在判断两个浮点数 a 和 b 是否相等时,不要用 a==b,应该判断二者之差的绝对值 fabs(a-b) 是否小于某个阈值,例如 1e-9
3 用 char 的值作为数组下标(例如,统计字符串中每个字符出现的次数),要考虑到 char 可能是负数。有的人考虑到了,先强制转型为 unsigned int 再用作下标,这仍然 是错的。正确的做法是,先强制转型为 unsigned char,再用作下标
4 STL相关:
(1)用一个哈希表 unordered_map<int, bool> used 记录每个元素是否使用
(2)初始化(数组转化为map) 下标有关的操作
for (int i = 0; i < num.size(); i++) { mapping[num[i]] = i; }
(3) 关于map的查找:mapping.find(gap) != mapping.end() 表示找到
5 auto:用来声明自动变量,使用auto变量的优势是不需要考虑去变量是否被释放,比较安全吧
6 关于求解sum问题(一个无序set里面k个数sum可以逼近或等于一个给定的target)的可以先排序再 左右夹逼
0 0
- 编程小技巧
- bcb编程小技巧
- C#编程小技巧
- SAS编程小技巧
- MFC编程小技巧
- C#编程小技巧
- 编程小技巧共享
- VC++编程小技巧
- 编程小技巧总结
- VC编程小技巧
- 编程小技巧
- android编程小技巧
- c编程小技巧
- android编程小技巧
- 编程小技巧
- MFC编程小技巧
- 编程小技巧
- VBA编程小技巧
- POJ 1488 TEX Quotes 串 水
- 21-IO流-16-IO流(字符流-缓冲区-自定义MyBufferedReader-read方法)
- HDOJ 1233 还是畅通工程(最小生成树)
- Num 31 : HDOJ : 1863 畅通工程 [ kruskal( 克鲁斯卡尔 )算法 ] [ 最小生成树 ]
- UTF-8
- 编程小技巧
- 使用Genymotion调试出现错误 不能装软件 应用未安装
- popupwindows用例
- 链队列
- hdoj 1863 畅通工程
- 21-IO流-17-IO流(字符流-缓冲区-自定义MyBufferedReader-readLine方法)
- ZigBee路由协议分析(机制,算法,发现,建立)
- APP搜索附近功能的一种解决方案-基于百度LBS云服务
- 黑马程序员-集合框架(二)