PHP两个n位的二进制整数相加问题的解决


Posted in PHP onAugust 26, 2018

两个n位的二进制整数相加问题PHP实现,供大家参考,具体内容如下

两个n位二进制数分别存储在两个n元数组A和B中,这两个整数的和存在一个n+1元的数组C中

答:

此问题主要是考察相加进位的问题,元素1+1 =0 并且往前进一位

ADD-BINARY(A,B)

C=new integer[A.length+1]

carry=0

for i=A.length downto 1

C[i+1]=(A[i]+B[i]+carry)%2

carry=(A[i]+B[i]+carry)/2

C[i]=carry

代码

<?php
function addBinary($A,$B){
 $C=array();
 $length=count($A);
 $carry=0;
 for($i=$length-1;$i>=0;$i--){
 //当前位的数字逻辑 1+1=0 1+0=1
 $C[$i+1]=($A[$i]+$B[$i]+$carry)%2;
 //进位的数字逻辑 1+1=1 1+0=0
 $carry=intval(($A[$i]+$B[$i]+$carry)/2);
 } 
 $C[$i+1]=$carry;
 return $C; 
}

$A=array(0,1,1,0);
$B=array(1,1,1,1);
$C=addBinary($A,$B);
var_dump($C);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP 高手之路(三)
Oct 09 PHP
php对二维数组按指定键值key排序示例代码
Nov 26 PHP
PHP jQuery表单,带验证具体实现方法
Feb 15 PHP
ThinkPHP2.0读取MSSQL提示Incorrect syntax near the keyword 'AS'的解决方法
Jun 25 PHP
ThinkPHP采用GET方式获取中文参数查询无结果的解决方法
Jun 26 PHP
html静态页面调用php文件的方法
Nov 13 PHP
[原创]smarty简单模板变量输出方法
Jul 09 PHP
浅析php中array_map和array_walk的使用对比
Nov 20 PHP
php mysql_list_dbs()函数用法示例
Mar 29 PHP
PHP递归的三种常用方式
Feb 28 PHP
php的命名空间与自动加载实现方法
Aug 25 PHP
PHP判断当前使用的是什么浏览器(推荐)
Oct 27 PHP
PHP连接sftp并下载文件的方法教程
Aug 26 #PHP
PHP操作Redis数据库常用方法示例
Aug 25 #PHP
PHP实现基于3DES算法加密解密字符串示例
Aug 24 #PHP
PHP与以太坊交互详解
Aug 24 #PHP
php获取微信基础接口凭证Access_token
Aug 23 #PHP
php对微信支付回调处理的方法
Aug 23 #PHP
PHP封装的验证码工具类定义与用法示例
Aug 22 #PHP
You might like
一周让你学会PHP 不错的学习资料
2009/02/06 PHP
PHP获取和操作配置文件php.ini的几个函数介绍
2013/06/24 PHP
推荐一款MAC OS X 下php集成开发环境mamp
2014/11/08 PHP
ThinkPHP 模板引擎使用详解
2017/05/07 PHP
基于CI(CodeIgniter)框架实现购物车功能的方法
2018/04/09 PHP
基于jquery的一个图片hover的插件
2010/04/24 Javascript
(jQuery,mootools,dojo)使用适合自己的编程别名命名
2010/09/14 Javascript
使用jQuery解决IE与FireFox下createElement方法的差异
2013/11/14 Javascript
javascript使用onclick事件改变选中行的颜色
2013/12/30 Javascript
js完美实现@提到好友特效(兼容各大浏览器)
2015/03/16 Javascript
Bootstrap的图片轮播示例代码
2015/08/31 Javascript
javascript运动框架用法实例分析(实现放大与缩小效果)
2016/01/08 Javascript
深入浅析AngularJS和DataModel
2016/02/16 Javascript
JS实现给对象动态添加属性的方法
2017/01/05 Javascript
js中作用域的实例解析
2017/03/16 Javascript
基于bootstrop常用类总结(推荐)
2017/09/11 Javascript
浅谈Vue SPA 首屏加载优化实践
2017/12/15 Javascript
JS使用Prim算法和Kruskal算法实现最小生成树
2019/01/17 Javascript
NodeJs 模仿SIP话机注册的方法
2019/06/21 NodeJs
JS highcharts实现动态曲线代码示例
2020/10/16 Javascript
WebStorm中如何将自己的代码上传到github示例详解
2020/10/28 Javascript
Python实现控制台进度条功能
2016/01/04 Python
Python的MongoDB模块PyMongo操作方法集锦
2016/01/05 Python
Python分析彩票记录并预测中奖号码过程详解
2019/07/09 Python
python中count函数简单用法
2020/01/05 Python
Python实现自动访问网页的例子
2020/02/21 Python
tensorflow常用函数API介绍
2020/04/19 Python
Python切片列表字符串如何实现切换
2020/08/06 Python
英国领先的野生鸟类食品供应商:GardenBird
2018/08/09 全球购物
Cecil Mode法国在线商店:女性时尚
2021/01/08 全球购物
C#如何允许一个类被继承但是避免这个类的方法被重载?
2015/02/24 面试题
前台文员的岗位职责
2013/11/14 职场文书
升职自荐信范文
2015/03/27 职场文书
2016小学教师读书心得体会
2016/01/13 职场文书
导游词之麻姑仙境
2019/11/18 职场文书
Python list列表删除元素的4种方法
2021/11/01 Python