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程序员编程注意事项
Apr 10 PHP
全局记录程序片段的运行时间 正确找到程序逻辑耗时多的断点
Jan 06 PHP
yii框架表单模型使用及以数组形式提交表单数据示例
Apr 30 PHP
PHP常用编译参数中文说明
Sep 27 PHP
PHP中使用虚代理实现延迟加载技术
Nov 05 PHP
php模仿asp Application对象在线人数统计实现方法
Jan 04 PHP
PHP使用mysql_fetch_object从查询结果中获取对象集的方法
Mar 18 PHP
PHP模拟post提交数据方法汇总
Feb 16 PHP
Zend Framework教程之Zend_Db_Table_Row用法实例分析
Mar 21 PHP
Laravel框架实现model层的增删改查(CURD)操作示例
May 12 PHP
laravel框架中路由设置,路由参数和路由命名实例分析
Nov 23 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 生成自动创建文件夹并上传文件的示例代码
2014/03/07 PHP
详解PHP中的mb_detect_encoding函数使用方法
2015/08/18 PHP
javascript dom 操作详解 js加强
2009/07/13 Javascript
关于IE BUG与字符串截取substr的解决办法
2013/04/10 Javascript
关于include标签导致js路径找不到的问题分析及解决
2013/07/09 Javascript
关于jQuery中的each方法(jQuery到底干了什么)
2014/03/05 Javascript
js放到head中失效的原因与解决方法
2017/03/07 Javascript
关于HTTP传输中gzip压缩的秘密探索分析
2018/01/12 Javascript
解析Vue.js中的组件
2018/02/02 Javascript
vue中如何动态绑定图片,vue中通过data返回图片路径的方法
2018/02/07 Javascript
vue2过滤器模糊查询方法
2018/09/16 Javascript
node.js使用redis储存session的方法
2018/09/26 Javascript
深入浅析javascript函数中with
2018/10/28 Javascript
express如何解决ajax跨域访问session失效问题详解
2019/06/20 Javascript
vue中js判断长时间不操作界面自动退出登录(推荐)
2020/01/22 Javascript
ES6中Promise的使用方法实例总结
2020/02/18 Javascript
[39:53]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第一场 11.19
2020/11/19 DOTA
python中实现php的var_dump函数功能
2015/01/21 Python
python打包压缩、读取指定目录下的指定类型文件
2018/04/12 Python
Python干货:分享Python绘制六种可视化图表
2018/08/27 Python
Python UnboundLocalError和NameError错误根源案例解析
2018/10/31 Python
Python对HTML转义字符进行反转义的实现方法
2019/04/28 Python
Python 处理文件的几种方式
2019/08/23 Python
对Tensorflow中Device实例的生成和管理详解
2020/02/04 Python
pycharm不以pytest方式运行,想要切换回普通模式运行的操作
2020/09/01 Python
大学军训感言200字
2014/02/26 职场文书
创业融资计划书
2014/04/25 职场文书
学生检讨书怎么写
2014/10/09 职场文书
一个都不能少观后感
2015/06/04 职场文书
学历证明样本
2015/06/16 职场文书
导游词之舟山普陀山
2019/11/06 职场文书
pytorch实现线性回归以及多元回归
2021/04/11 Python
MySQL下使用Inplace和Online方式创建索引的教程
2021/05/26 MySQL
MySQL悲观锁与乐观锁的实现方案
2021/11/02 MySQL
通过feDisplacementMap和feImage实现水波特效
2022/04/24 HTML / CSS
nginx rewrite功能使用场景分析
2022/05/30 Servers