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 页面编码声明方法详解(header或meta)
Mar 12 PHP
JS 网站性能优化笔记
May 24 PHP
php实现过滤表单提交中html标签的方法
Oct 17 PHP
PHP实现采集抓取淘宝网单个商品信息
Jan 08 PHP
PHP实现过滤各种HTML标签
May 17 PHP
解析WordPress中控制用户登陆和判断用户登陆的PHP函数
Mar 01 PHP
PHP对称加密函数实现数据的加密解密
Oct 27 PHP
php读取qqwry.dat ip地址定位文件的类实例代码
Nov 15 PHP
[企业公众号]升级到[企业微信]之后发送消息失败的解决方法
Jun 30 PHP
PHP高并发和大流量解决方案整理
Dec 24 PHP
Laravel实现批量更新多条数据
Apr 06 PHP
PHP常量及变量区别原理详解
Aug 14 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/08/31 PHP
PHP三元运算的2种写法代码实例
2014/05/12 PHP
php上传图片生成缩略图(GD库)
2016/01/06 PHP
php格式文件打开的四种方法
2018/02/24 PHP
jQuery下扩展插件和拓展函数的写法(匿名函数使用的典型例子)
2010/10/20 Javascript
ModelDialog JavaScript模态对话框类代码
2011/04/17 Javascript
JavaScript代码复用模式实例分析
2012/12/02 Javascript
基于JQuery 选择器使用说明介绍
2013/04/18 Javascript
JS实现兼容性好,自动置顶的淘宝悬浮工具栏效果
2015/09/18 Javascript
原生js和jQuery实现淡入淡出轮播效果
2015/12/25 Javascript
vue构建单页面应用实战
2017/04/10 Javascript
详解Vue 非父子组件通信方法(非Vuex)
2017/05/24 Javascript
vue2.0 实现导航守卫的具体用法(路由守卫)
2018/05/17 Javascript
angular ng-model 无法获取值的处理方法
2018/10/02 Javascript
解决Vue中使用keepAlive不缓存问题
2020/08/04 Javascript
Python下使用Psyco模块优化运行速度
2015/04/05 Python
Python实现线程池代码分享
2015/06/21 Python
Python 详解基本语法_函数_返回值
2017/01/22 Python
python批量修改文件夹及其子文件夹下的文件内容
2019/03/15 Python
pyqt5 使用label控件实时显示时间的实例
2019/06/14 Python
python实现差分隐私Laplace机制详解
2019/11/25 Python
Python+numpy实现矩阵的行列扩展方式
2019/11/29 Python
Python celery原理及运行流程解析
2020/06/13 Python
浅谈keras.callbacks设置模型保存策略
2020/06/18 Python
新西兰演唱会和体育门票网站:Ticketmaster新西兰
2017/10/07 全球购物
一套带网友答案的.NET笔试题
2016/12/06 面试题
卫校中专生个人自我评价
2013/09/19 职场文书
公司授权委托书范本
2014/04/03 职场文书
病人家属写给医院的感谢信
2015/01/23 职场文书
2015年感恩父亲节演讲稿
2015/03/19 职场文书
详细总结Python常见的安全问题
2021/05/21 Python
Java Optional<Foo>转换成List<Bar>的实例方法
2021/06/20 Java/Android
浅谈JavaScript作用域
2021/12/06 Javascript
MIME类型中application/xml与text/xml的区别介绍
2022/01/18 HTML / CSS
使用scrapy实现增量式爬取方式
2022/06/21 Python
html原生table实现合并单元格以及合并表头的示例代码
2023/05/07 HTML / CSS