您的位置:
首页
->
编程文档
->
Java
-> 一个最优的算法
Java
本类阅读TOP10
·
使用MyEclipse开发Struts框架的Hello World!(录像1)
·
hibernate配置笔记
·
AOP编程入门--Java篇
·
linux下Tomcat 5.0.20 与 Apache 2 安装/集成/配置
·
在win2003下整合了整合Tomcat5.5+ apache_2.0.53+ mod_jk_2.0.47.dll
·
构建Linux下IDE环境--Eclipse篇
·
Jsp 连接 mySQL、Oracle 数据库备忘(Windows平台)
·
ASP、JSP、PHP 三种技术比较
·
Tomcat5.5.9的安装配置
·
AWT GUI 设计笔记(二)
→
分类导航
VC语言
Delphi
VB语言
ASP
Perl
Java
Script
数据库
其他语言
游戏开发
文件格式
网站制作
软件工程
.NET开发
一个最优的算法
作者
:未知
来源
:月光软件站
加入时间
:2005-2-28 月光软件站
问题:对一个正整数n,求一个不大于n而且是2的指数的最大整数.
int floor(int n){
n=n | n>>1;
n=n | n>>2;
n=n | n>>4;
n=n | n>>8;
n=n | n>>16;
return n-(n>>1);
}
真的是我发现的最高效的程序了,只要12条指令.
另外对这个问题的一般都会这样
m=1;
while(m<=n) m<<1;
return m>>1;
看起来更简洁但是效率低了不少.
相关文章
:
相关软件
: