随笔分类 -  程序代码整理

剑指offer相关代码整理7-8
摘要:49 把字符串转换成整数 有一个小细节,如果直接在代码中用整型的最小值0x80000000与res来进行比较,实际上默认为无符号整数。 51 数组中的重复数字 利用容器map会非常简单,也就是一种消耗空间换时间的算法。 另外有一种巧妙的解法是利用了数字的特征——长度为n的数组,数组中所有的数字范围是 阅读全文

posted @ 2017-07-18 16:33 sjqiu 阅读(149) 评论(0) 推荐(0)

剑指offer相关代码整理5-6
摘要:第五部分 优化时间和空间效率 29 数组中出现次数超过一半的数字 这个题的关键在于,掌握的基本技巧之后,还要注意程序末尾有一个检验函数——也就是说存在那种可能性,最后存储的数字实际上并没有达到数量超过数组长度的一般,因此需要进一步检验一下。容易忘记。 另外还有一种基于partition函数的解法。 阅读全文

posted @ 2017-07-18 16:28 sjqiu 阅读(223) 评论(0) 推荐(0)

剑指offer相关代码整理2-4
摘要:第二部分——面试需要的基础知识 01 赋值运算符函数 /*01赋值运算符函数 */ class CMyString { public: CMyString(const char* pData = NULL); CMyString(const CMyString& str); CMyString& o 阅读全文

posted @ 2017-07-18 16:10 sjqiu 阅读(203) 评论(0) 推荐(0)

位运算相关内容整理
摘要:位运算相关内容整理 1) 负数 负数的右移:负数右移的话,由于要保持它是负数,所以负数的二进制的左边补1。如果一直右移的话,最后就就变成0xFFFFFFFF 即-1 如: -4>>1 为-2 ;-4>>2为-1 负数的左移:跟正整数左移一样,右边补0。左移总是在低位补零,高位丢失,因而负数左移后可能 阅读全文

posted @ 2017-07-09 14:15 sjqiu 阅读(220) 评论(0) 推荐(0)

算术运算的模拟 —— 乘法,除法
摘要:算数运算的模拟相关问题 大数的运算,不用乘除做除法,等等。待补充。。。 01 模拟两个大数相乘 02. 不用乘除做除法 借鉴思路如下: ”Suppose we want to divide 15 by 3, so 15 is dividend and 3 is divisor. Well, divi 阅读全文

posted @ 2017-07-08 21:51 sjqiu 阅读(400) 评论(0) 推荐(0)

导航