算法
文章平均质量分 78
erzr_zhang
这个作者很懒,什么都没留下…
展开
-
算法的时间复杂度和空间复杂度
没有挤公交来上班过,就不知道生活的压力有多大。 算法的时间复杂度和空间复杂度合称为算法的复杂度。 1.时间复杂度 (1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了。并且一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中转载 2016-10-29 21:15:54 · 266 阅读 · 0 评论 -
二进制平行算法
接下来开始分析改算法是如何实现二进制表示中1的个数统计的,为了方便理解,我们把代码改成如下的形式: int func(unsigned int i) { unsigned int temp = i; temp = (temp & 0x55555555) + ((temp>> 1) & 0x55555555); //temp相邻位相加 temp = (te原创 2017-02-15 17:29:04 · 759 阅读 · 0 评论 -
编程之美:求二进制中1的个数
1.问题描述 实现一个函数,输入一个无符号整数,输出该数二进制中的1的个数。例如把9表示成二进制是1001,有2位是1,因此如果输入9,该函数输出2 2.分析与解法 解法1:利用十进制和二进制相互转化的规则,依次除余操作的结果是否为1 代码如下: int Count1(unsigned int v) { int num = 0;原创 2017-02-15 19:02:57 · 329 阅读 · 0 评论