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 02 PHP
Memcached常用命令以及使用说明详解
Jun 27 PHP
PHP递归删除目录几个代码实例
Apr 21 PHP
PHP判断一个字符串是否是回文字符串的方法
Mar 23 PHP
php实现向javascript传递数组的方法
Jul 27 PHP
PHP模板引擎Smarty内置变量调解器用法详解
Apr 11 PHP
Yii2 RESTful中api的使用及开发实例详解
Jul 06 PHP
php版微信支付api.mch.weixin.qq.com域名解析慢原因与解决方法
Oct 12 PHP
详解PHP编码转换函数应用技巧
Oct 22 PHP
thinkPHP中钩子的两种配置调用方法详解
Nov 11 PHP
php实现当前页面点击下载文件的实例代码
Nov 16 PHP
laravel5.6 框架邮件队列database驱动简单demo示例
Jan 26 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
我的论坛源代码(一)
2006/10/09 PHP
用 PHP5 轻松解析 XML
2006/12/04 PHP
CI(CodeIgniter)框架介绍
2014/06/09 PHP
十幅图告诉你什么是PHP引用
2015/02/22 PHP
PHP基于phpqrcode生成带LOGO图像的二维码实例
2015/07/10 PHP
关于WordPress的SEO优化相关的一些PHP页面脚本技巧
2015/12/10 PHP
php判断电子邮件是否正确方法
2018/12/04 PHP
javascripit实现密码强度检测代码分享
2013/12/12 Javascript
js星星评分效果
2014/07/24 Javascript
jquery实现鼠标滑过后动态图片提示效果实例
2015/08/10 Javascript
详细谈谈AngularJS的子级作用域问题
2016/09/05 Javascript
JS脚本实现网页自动秒杀点击
2018/01/11 Javascript
React实现全局组件的Toast轻提示效果
2018/09/21 Javascript
Vue框架TypeScript装饰器使用指南小结
2019/02/18 Javascript
详解VUE调用本地json的使用方法
2019/05/15 Javascript
JavaScript实现弹出窗口效果
2020/12/09 Javascript
Python中使用ElementTree解析XML示例
2015/06/02 Python
总结Python编程中函数的使用要点
2016/03/20 Python
老生常谈进程线程协程那些事儿
2017/07/24 Python
python中的插值 scipy-interp的实现代码
2018/07/23 Python
python将txt等文件中的数据读为numpy数组的方法
2018/12/22 Python
python执行精确的小数计算方法
2019/01/21 Python
Python 窗体(tkinter)按钮 位置实例
2019/06/13 Python
使用python socket分发大文件的实现方法
2019/07/08 Python
利用pytorch实现对CIFAR-10数据集的分类
2020/01/14 Python
python 监控服务器是否有人远程登录(详细思路+代码)
2020/12/18 Python
利用CSS3伪元素实现逐渐发光的方格边框
2017/05/07 HTML / CSS
Lacoste(法国鳄鱼)加拿大官网:以标志性的POLO衫而闻名
2019/05/15 全球购物
学年自我鉴定范文
2013/10/01 职场文书
电气个人求职信范文
2014/02/04 职场文书
申请任职学生会干部自荐书范文
2014/02/13 职场文书
教师师德反思材料
2014/02/15 职场文书
思想纪律作风整顿剖析材料
2014/10/11 职场文书
2015年乡镇财政工作总结
2015/05/19 职场文书
pytorch实现线性回归以及多元回归
2021/04/11 Python
NodeJs内存占用过高的排查实战记录
2021/05/10 NodeJs