基础算法之二进制转换

原创 2015年11月17日 19:12:21

        基本的将十进制转换为二进制方法为:整数部分为除二取余法,小数部分乘二取整法。为什么?

 对于十进制基数为10,对于二进制来说基数为2.例如:

1.  (368)D   368%2=0   184%2=0   92%2=0    46%2=0    23%2=1    11%2=1   5%2=1   2%2=0   1%2=1

所以 (368)D=(101110000)B

2.   (0.5625)D  0.5625*2=1.125取1  0.125*2=0.25取0   0.25*2=0.5取0   0.5*2=1取1

所以 (0.5625)D=(0.1001)B

       通过上述过程将二进制转换为十进制就简单了

从右到左用二进制的每个数去乘以2的相应次方,例如:

1101.01(2)=1*20+0*21+1*22+1*2+0*2-1+1*2-2=1+0+4+8+0+0.25=13.25



    

基础算法之二:递归

递归用处很广,可以将复杂问题简单化。 很多问题都可以使用递归算法或结合递归算法得到解决。   那么,设计递归算法的关键是什么?  其关键之处在于,正确分析出2种类型的节点:出口节点和入口节点 ...
  • shuilan0066
  • shuilan0066
  • 2012年02月15日 17:33
  • 977

基础算法(一)

最近看了《Java编程那些事》博客专栏,在讲到Java流程控制那块,提到了很多自己当初学习过程中涉及到的小算法,都很经典,以后会不断的将接触到的算法更新到本博文中,供自己以后查看,也可以作为大家学习的...
  • ghsau
  • ghsau
  • 2012年03月14日 22:09
  • 10999

【基础算法】排序-简单排序之二(选择排序)

选择排序的时间复杂度依然为O(N^2)
  • yexiao123098
  • yexiao123098
  • 2014年10月24日 11:12
  • 169

Java基础算法集50题

本文转自:http://www.cnblogs.com/freeliver54/archive/2013/04/11/3013982.html  最近因为要准备实习,还有一个蓝桥杯的编程比赛,所以准...
  • u014490157
  • u014490157
  • 2015年05月21日 10:56
  • 1395

一些基础的算法题(面试)

部分IT公司笔试算法题                                个人总结,算法未必最合理,仅供参考: shayg@163.com1、将一整数逆序后放入一数组中(要求递归实现)vo...
  • alexmahone_xie
  • alexmahone_xie
  • 2010年10月29日 15:52
  • 2633

二叉树基础算法总结

以下考察点借鉴了http://blog.csdn.net/randyjiawenjie/article/details/6772145,解法力求原创,若有错误,望指正。 二叉树的三种遍历(递归)//...
  • zada_2012
  • zada_2012
  • 2016年04月13日 11:26
  • 207

sdut oj3341 数据结构实验之二叉树二:遍历二叉树

题目链接:点击打开链接 数据结构实验之二叉树二:遍历二叉树 Time Limit: 1000MS Memory limit: 65536K 题目描述 已知二叉树的一个按...
  • Annfan123
  • Annfan123
  • 2016年08月08日 16:26
  • 413

关于C++基础算法--高精度计算(1)

PS:我也不知道为什么无聊写了这篇博客,有需要的可以看一看。(完整程序在最后)   利用计算机进行数值计算,有时会遇见这样的问题:有些计算要求精度高,希望计算的数的位数可达上百位。虽说计算机本身...
  • Xu_Yuefeng
  • Xu_Yuefeng
  • 2018年01月26日 07:59
  • 10

[hdu-2042] 不容易系列之二

不容易系列之二 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total ...
  • u011506951
  • u011506951
  • 2014年04月28日 18:15
  • 793

几个Python中的基础算法

1、斐波那契数列函数:>>> a,b =0,1#初始化,多重赋值 >>> a,b = 0, 1 >>> while b < 1000:#1000可换为别的数字 print(b) a,b...
  • xiaodongxiexie
  • xiaodongxiexie
  • 2016年04月13日 22:59
  • 3446
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:基础算法之二进制转换
举报原因:
原因补充:

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