#include <stdio.h>
#include <stdlib.h>
#include <time.h>int BitCount2(unsigned int n)
{  unsigned int c =0 ;  while(n!=0)  {  n &= (n -1) ; // 清除最低位的1  c++;  }  return c ;
}
int BitCount4(unsigned int n)
{   n = (n &0x55555555) + ((n >>1) &0x55555555) ;    //  n相邻位相加  n = (n &0x33333333) + ((n >>2) &0x33333333) ;    //  n(以2为单位)相邻位相加  n = (n &0x0f0f0f0f) + ((n >>4) &0x0f0f0f0f) ;    //  n(以4为单位)相邻位相加  n = (n &0x00ff00ff) + ((n >>8) &0x00ff00ff) ;    //  n(以8为单位)相邻位相加  n = (n &0x0000ffff) + ((n >>16) &0x0000ffff) ;   //  n(以16为单位)相邻位相加  return n ;
}
int  main( )
{long i=100000000;unsigned int n;clock_t start, finish; double Total_time; start = clock(); while(--i)n=BitCount2(123456789);finish = clock(); printf( "bit number::%d \n", n); Total_time = (double)(finish-start) / CLOCKS_PER_SEC; printf( "BitCount2::%f seconds\n", Total_time); printf( "\n", n); i=100000000;start = clock(); while(--i)n=BitCount4(123456789);finish = clock(); Total_time = (double)(finish-start) / CLOCKS_PER_SEC; printf( "bit number::%d \n", n); printf( "BitCount4::%f seconds\n", Total_time); return 0;
}

运行结果:

如上所示:一个好的算法是多么重要。。。

C语言之测试程序运行时间相关推荐

  1. 用C语言测试程序运行时间,c语言测试程序执行时间

    http://blog.csdn.NET/asaasa66/article/details/6543929 测试程序运行时间-time.h 1.计时 C/C++中的计时函数是clock(),而与其相关 ...

  2. C语言如何计算程序运行时间

    C语言如何计算程序运行时间 C/C++中的计时函数是clock(),而与其相关的数据类型是clock_t 函数原型: clock_t __cdecl clock(void); clock_t是一个长整 ...

  3. c++程序记时模板 测试程序运行时间

    有时为了测试程序运行时间,或者程序陷入了死循环,要不定期打印某些变量的值,又懒得打断点,太麻烦,此时可以定期输出程序变量值,观察运行情况 下面给出c++计时模板  前不久为启动和关闭oracle服务写 ...

  4. c语言测机器运行时间,C语言clock()测试函数运行时间

    运行环境: win10家庭版 64位 MinGW.org GCC-6.3.0-1 以下英文解释引自man page: man 3 clock DESCRIPTION The clock() funct ...

  5. C#中提供的精准测试程序运行时间的类Stopwatch

    http://www.cnblogs.com/ret00100/archive/2010/08/06/1793680.html 在需要对程序的执行时间进行精准测试的程序员,不妨使用.Net提供的Sto ...

  6. C#测试程序运行时间

    一.用C#自带的StopWatch函数 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 using System; usi ...

  7. c语言linux打印运行时间(耗时) gettimeofday()、timeval、<sys/time.h>

    #include <stdio.h> #include <sys/time.h>double __get_us(struct timeval t) { return (t.tv ...

  8. 在Windows中测试c语言单个函数运行时间方法

    在做单片机项目开发的过程中,在特殊应用中对代码执行的时间有着严格的要求,那么如何准确的测试出每个函数的的运行速度是多快呢?通常用单片机测试的方法就是通过示波器观察. 比如现在要测试使用二分查找法,在数 ...

  9. C 语言基础——程序运行时间的计算

    理论上的时间复杂度分析,以及实践中的具体的程序运行时间是衡量程序复杂度以及检测程序性能提升的重要指标. 最常用的方式: #include <time.h> time_t t0 = cloc ...

最新文章

  1. 第六篇:并发-粒度锁
  2. (转载)计算机科学中最重要的32个算法
  3. Spring注解@Import详细使用说明
  4. mysql my.cnf 官网_MySQL my.cnf 的配置
  5. 浅析Asp.net MVC 中Ajax的使用
  6. linux脚本多个条件比较大小,shell脚本-比较两个整数大小
  7. 使用sublime的SQLTools插件访问MySQL的配置方法
  8. jupyter lab插件无法打开,且报错Error: 500 (Internal Server Error)
  9. ASP.Net学习笔记012--12ViewState初探
  10. 戴尔服务器t330可以用无线网卡吗,DELL T330服务器安装windows2008R2系统
  11. 软件性能之进程优先级
  12. Java权限管理系统
  13. 移动网速测试软件,网速测试大师APP
  14. 人体姿态估计之CPN中文文献翻译
  15. 1004-史丰收速算
  16. #1265 - Data truncated for column
  17. CIO40: IT男之日常工作(点线面体)
  18. 测评您的大数据薪资水平
  19. 如何让网页显示友好的错误信息页面
  20. 有没有Mac游戏推荐?尤卡莱莉大冒险 for Mac

热门文章

  1. android pie华为更新,华为多款机型近期将迎来Android Pie系统更新,下列这几款肯定有你...
  2. fedora 安装google浏览器失败,报错
  3. php sqlite存入文件夹,PHP_小文件php+SQLite存储方案,我们草根站长购买的虚拟主机 - phpStudy...
  4. erp核心目的及erp特点
  5. 网站服务器修改内容,网站被收录后内容还可以修改吗?
  6. 2020-06-05 原始套接字/AF_PACKET链路层访问
  7. 浅析 golang module
  8. elementUI中复选框checkbox的使用
  9. 【数据结构的魅力】004.堆、前缀树、桶排序、排序算法总结
  10. 【java学习之路】(java SE篇)009.IO