php实现俄罗斯乘法实例

yipeiwu_com5年前PHP代码库

本文实例讲述了php实现俄罗斯乘法的方法。分享给大家供大家参考。具体分析如下:

一、概述:

俄罗斯乘法是一种计算两数相乘的算法。
举例如下:
计算 35*72
过程
35 72
17 144
8 288
4 576
2 1152
1 2304
从上到下,对每一行,若左边的数字若为奇数,则将右边的数字取出,累加。
72+144+2304=2520
累加的结果2520即为乘积。

二、实现代码:

<?php
function russian($m, $n, $res = 0){
  (1 == ($n & 1)) && $res += $m;
  $m = $m << 1;
  $n = $n >> 1;
  return $n ? russian($m, $n, $res) : $res;
}
echo russian(7, 8);

希望本文所述对大家的php程序设计有所帮助。

相关文章

详解WordPress中给链接添加查询字符串的方法

详解WordPress中给链接添加查询字符串的方法

查询字符串指的是链接中后边的问号后的查询语句,格式为 key=value,多个查询语句用 & 符号分开。add_query_arg() 函数就是 WordPress 提供的一个方便的函数...

PHP+APACHE实现网址伪静态

 Apache的 mod_rewrite是比较强大的,在进行网站建设时,可以通过这个模块来实现伪静态。 主要步骤如下:   1.检测Apache是否开启mod_rewrite功...

如何提高PHP速度第1/3页

简单的数据缓存技术    近来做了一阵子程序性能的优化工作,有个比较有意思的想法,想提出来和大家交流一下。    Cache是“以空间换时间”策略的典型应用模式,是提...

php使用SAE原生Mail类实现各种类型邮件发送的方法

本文实例讲述了php使用SAE原生Mail类实现各种类型邮件发送的方法。分享给大家供大家参考,具体如下: 用过SAE的都知道,SAE所有服务中,就数Mail服务最不行了,时不时邮件就发不...

Zend的AutoLoad机制介绍

代码示例 复制代码 代码如下: set_include_path(USVN_LIB_DIR . PATH_SEPARATOR . get_include_path()); require...