剑指offer中二进制中1的个数
2015-08-29 17:33
148 查看
容易想到的是将n一位一位的和1进行比较,产生如下代码
![](http://images2015.cnblogs.com/blog/520565/201508/520565-20150829172445000-1171826605.png)
但是这样的话会出下面的问题
![](http://images2015.cnblogs.com/blog/520565/201508/520565-20150829172557453-847399882.png)
那么就是原数据不动,将1依次移动进行比较有如下的代码
![](http://images2015.cnblogs.com/blog/520565/201508/520565-20150829172756844-1145987192.png)
一种更简单的方法是:
![](http://images2015.cnblogs.com/blog/520565/201508/520565-20150829172846250-1721206130.png)
这样做的思路是
![](http://images2015.cnblogs.com/blog/520565/201508/520565-20150829172933297-547445947.png)
总而言之
![](http://images2015.cnblogs.com/blog/520565/201508/520565-20150829172445000-1171826605.png)
但是这样的话会出下面的问题
![](http://images2015.cnblogs.com/blog/520565/201508/520565-20150829172557453-847399882.png)
那么就是原数据不动,将1依次移动进行比较有如下的代码
![](http://images2015.cnblogs.com/blog/520565/201508/520565-20150829172756844-1145987192.png)
一种更简单的方法是:
![](http://images2015.cnblogs.com/blog/520565/201508/520565-20150829172846250-1721206130.png)
这样做的思路是
![](http://images2015.cnblogs.com/blog/520565/201508/520565-20150829172933297-547445947.png)
总而言之
![](http://images2015.cnblogs.com/blog/520565/201508/520565-20150829173201594-1368887405.png)
相关文章推荐
- 小而精,小而美的一款开源的迷你框架Underscore.js
- 【线段树】【JSOI 2008】【bzoj 1012】最大数maxnumber
- 25 Reverse Nodes in k-Group
- 选择使用 Sugar.js 还是 Underscore.js ?
- JavaScript 设计模式之----单体(单例)模式
- JavaScript 设计模式之----单体(单例)模式
- 学习笔记 五 css
- js的replaceAll() (转)
- Leetcode 222: Count Complete Tree Nodes
- Javascript、Jquery获取浏览器和屏幕各种高度宽度
- 【前端学习笔记】JS学习基础
- javascript div动态大小改变
- jquery专业的导航菜单特效代码分享
- html history
- CSS 3 概述
- Javascript高级程序设计——javascript简介
- 微软笔试题 HihoCoder#1136: Professor Q's Software 题解
- CSS3 icon font完全指南
- HTML5 元素拖放
- JSOI2007 麻将 题解