求余算法(非%!!)

原创 2013年12月06日 10:40:42
使用%进行求余:
        DWORD x = 31;
DWORD y = 16;

unsigned k = 0;
DWORD t1 = GetTickCount();
for(k=0; k<10000000; k++){
y = x % 16;
}
TRACE("\n%lu\n", GetTickCount() - t1); 
输出在47 - 67之间; 

 使用位移进行求余

        DWORD x = 31;
DWORD y = 16;

unsigned k = 0;
DWORD t1 = GetTickCount();
for(k=0; k<10000000; k++){
y = ((x << 28) >> 28);
}
TRACE("\n%lu\n", GetTickCount() - t1);   

输出在31-32之间。

相关文章推荐

JAVA实践非完美·在线处理算法求最大连续子序列和并输出首尾

前言来自PAT:https://pta.patest.cn/pta/test/16/exam/4/question/663Given a sequence of KK integers { N_1N ...

[算法]Java实现 求两个非负整数最大公约数 循环法 递归法

[算法]Java实现 求两个非负整数最大公约数 循环法 递归法代码功能:1.Java实现(完整源码附测试用例); 2.求解两个非负整数p,q(p>=q)的最大公约数; 3.循环法 以及 递归法两种...

高效率求素数c算法

  • 2016年12月03日 11:33
  • 244B
  • 下载

Kruskal算法求图的最小生成树的完整C代码

求加权连通图的最小生成树的算法。kruskal算法总共选择n- 1条边,所使用的贪婪准则是:从剩下的边中选择一条不会产生环路的具有最小耗费的边加入已选择的边的集合中。注意到所选取的边若产生环路则不可能...

求两个正整数的最大公因数算法

  • 2014年11月09日 21:10
  • 31KB
  • 下载

求回文子串_O(n)_manacher算法

  • 2013年05月24日 00:17
  • 240KB
  • 下载

BFPRT算法解决求前k(大或小)数的问题

文章转载自:http://blog.csdn.net/acdreamers/article/details/44656295 通常,我们需要在一大堆数中求前K大的数,或者求前K小的。比如在搜索引...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:求余算法(非%!!)
举报原因:
原因补充:

(最多只允许输入30个字)