PHP实现的杨辉三角求解算法分析
作者:moTzxx 发布时间:2023-11-19 13:52:29
标签:PHP,杨辉三角,求解算法
本文实例讲述了PHP实现的杨辉三角求解算法。分享给大家供大家参考,具体如下:
♥ 前言
对于 杨辉三角 是什么的问题,请参考百度百科的详细解释: 杨辉三角
杨辉三角,是二项式系数在三角形中的一种几何排列。在欧洲,这个表叫做帕斯卡三角形。帕斯卡(1623—-1662)是在1654年发现这一规律的,比杨辉要迟393年,比贾宪迟600年。杨辉三角是中国古代数学的杰出研究成果之一,它把二项式系数图形化,把组合数内在的一些代数性质直观地从图形中体现出来,是一种 离散型的数与形 的结合
♠ 代码实现
题目的要求是:设计代码,实现打印 杨辉三角 的功能
此处提供的参考代码为 PHP,其他语言可参考推敲
①. 第一种方法
使用两个 for
循环进行输出,比较好理解
/**
* 第一种代码实现
* @param int $n 要求的层数
* 理解思路: $i代表行数; $j代表列数
*/
public function funYH($n = 1){
//初始化数组
$arr = [];
for($i = 0;$i < $n;$i++){
//注意循环条件
for($j = 0;$j <= $i;$j++){
if($j == 0 || $i == $j){
$arr[$i][$j] = 1;
}else {
$arr[$i][$j] = $arr[$i-1][$j-1]+$arr[$i-1][$j];
}
echo $arr[$i][$j]."\t";
}
echo "<br/>";
}
}
②. 第二种方法
使用的是 while
循环
/**
* 第二种代码实现
* @param int $n 要求的层数
*/
public function funYH2($n = 1){
//初始化数组
$arrL = [1,1];
//初始化索引
$index = 0;
while ($index < $n){
if ($index == 0){
echo $arrL[$index]."\t";
}elseif ($index == 1){
echo $arrL[$index - 1]."\t".$arrL[$index]."\t";
}else{
$oldL = $arrL;
for ($i = 0;$i <= count($oldL);$i++){
$arrL[$i] = $oldL[$i-1] + $oldL[$i];
echo $arrL[$i]."\t";
}
}
$index ++;
echo "<br/>";
}
}
③. 输出结果
输出的结果是相同的,参考如下:
希望本文所述对大家PHP程序设计有所帮助。
来源:https://blog.csdn.net/u011415782/article/details/79615054
0
投稿
猜你喜欢
- 1.根据id获取元素document.getElementById("id属性的值");返回值是一个元素对象案例:点击按
- 启动mysql server 失败,查看/var/log/mysqld.err080329 16:01:29 [ERROR] Can'
- 以下函数可用于替换php内置的is_writable函数//可用于替换php内置的is_writable函数function isWrita
- 即使是简单的脚本语言,应用良好的模式可以得到非常“优美”的代码和较高的效率。尤其是对于交互要求较高的B/S系统,非常有必要用设计模式来优化代
- 如何在php中判断一个网页请求是ajax请求还是普通请求?你可以通过传递参数的方法来实现,例如使用如下网址请求:/path/to/pkphp
- staytime.asp<% If Request.QueryString("time")&n
- PHP观察者模式(Observer Pattern)观察者模式是一种行为设计模式,它定义了一种订阅机制,让一个或多个对象(观察者)自动被通知
- 首先使用内置模块os.>>> import os>>> code = os.system("p
- CSS中最常用的布局类属性,一个是Float(CSS浮动属性Float详解),另一个就是CSS定位属性Position。1. positio
- 实体有五种预定义的XML实体,HTML编码者应该熟悉。XML文档中的字符&、<、>、"和'被分别表示为
- 在Microsoft SQL Server 2000中,用于数据存储的实用工具是数据库。数据库的物理表现是操作系统文件,即在物理上,一个数据
- <%@LANGUAGE="xxx" CODEPAGE="936"%>一般又分为<%
- fmtfmt是go语言中的格式化输入输出库,其中主要分为两个部分,分别是输出部分和输入部分。输出PrintPrint函数的主要功能是输出,和
- Go 程序的性能优化及 pprof 的使用程序的性能优化无非就是对程序占用资源的优化。对于服务器而言,最重要的两项资源莫过于 CPU 和内存
- 日期和时间类型MySQL有多个表示各种日期和时间值的数据类型, 比如YEAR和DATE. MySQL存储时间的最精确粒度是秒。 然而, 能做
- cupy我觉得可以理解为cuda for numpy,安装方式pip install cupy,假设import numpy as npim
- 如何使用数据绑定控件实现不换页提交数据?Chunfeng.html' 提交页面< html><
- 相信每个前端工程师都有自己喜爱的javascript框架,说情感也好,道信仰也罢,javascript框架带给人的不仅仅是便捷的开发,更有一
- <!doctype html><html><head><meta http-equiv
- 代码如下:<script type=text/javascript src=http://fw.qq.com/ipaddress>