好得很程序员自学网
  • 首页
  • 后端语言
    • C#
    • PHP
    • Python
    • java
    • Golang
    • ASP.NET
  • 前端开发
    • Angular
    • react框架
    • LayUi开发
    • javascript
    • HTML与HTML5
    • CSS与CSS3
    • jQuery
    • Bootstrap
    • NodeJS
    • Vue与小程序技术
    • Photoshop
  • 数据库技术
    • MSSQL
    • MYSQL
    • Redis
    • MongoDB
    • Oracle
    • PostgreSQL
    • Sqlite
    • 数据库基础
    • 数据库排错
  • CMS系统
    • HDHCMS
    • WordPress
    • Dedecms
    • PhpCms
    • 帝国CMS
    • ThinkPHP
    • Discuz
    • ZBlog
    • ECSHOP
  • 高手进阶
    • Android技术
    • 正则表达式
    • 数据结构与算法
  • 系统运维
    • Windows
    • apache
    • 服务器排错
    • 网站安全
    • nginx
    • linux系统
    • MacOS
  • 学习教程
    • 前端脚本教程
    • HTML与CSS 教程
    • 脚本语言教程
    • 数据库教程
    • 应用系统教程
  • 新技术
  • 编程导航
    • 区块链
    • IT资讯
    • 设计灵感
    • 建站资源
    • 开发团队
    • 程序社区
    • 图标图库
    • 图形动效
    • IDE环境
    • 在线工具
    • 调试测试
    • Node开发
    • 游戏框架
    • CSS库
    • Jquery插件
    • Js插件
    • Web框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>后端语言>PHP
<tfoot draggable='sEl'></tfoot>

php数组算法题 php数组数据结构

很多站长朋友们都不太清楚php数组算法题,今天小编就来给大家整理php数组算法题,希望对各位有所帮助,具体内容如下:

本文目录一览: 1、 几个PHP算法题 2、 PHP数组计算 如下数组$arr,求方法随机对数组的值相加,求和为指定值:如(690),输出:405+180+105=690 3、 php求最大连续出现次数的算法,见问题详细 4、 php数组问题 几个PHP算法题

比如:冒泡排序,插入排序,选择排序,合并多个数组,杨辉三角这些都涉及到算法!

PHP数组计算 如下数组$arr,求方法随机对数组的值相加,求和为指定值:如(690),输出:405+180+105=690

<?php

$arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];

/**

 * 根据某个值对数组中的元素进行分组

 */

function getGroupBySum($arr, $sum) {

    $len = count($arr);

    $result = [];

    // for 1

    for($i = 0; $i < $len; $i++) {

        // for 2

        for($j = 1; $j < $len - $i; $j++) {

            $tmp = array_slice($arr, $i+1, $j);

            array_unshift($tmp, $arr[$i]);

            if(array_sum($tmp) == $sum) {

                $result[] = $tmp;

            }

        }

        //for 3

        for($k = $i + 1; $k < $len; $k++) {

            if(($arr[$i] + $arr[$k]) == $sum) {

                $result[] = [$arr[$i], $arr[$k]];

            }

        }

    }

    return $result;

}

print_r(getGroupBySum($arr, 10));

打印结果:

Array

(

    [0] => Array

        (

            [0] => 1

            [1] => 2

            [2] => 3

            [3] => 4

        )

    [1] => Array

        (

            [0] => 1

            [1] => 9

        )

    [2] => Array

        (

            [0] => 2

            [1] => 8

        )

    [3] => Array

        (

            [0] => 3

            [1] => 7

        )

    [4] => Array

        (

            [0] => 4

            [1] => 6

        )

)

函数getGroupBySum的算法解释:

我只能解释到这里了,剩下的只可意会。

---------------------------2017/2/16/19:45--------------

下班回去的途中,仔细思考了一下,我上面的函数还没有找到 1、2、7与1、3、6等等,所以它是错的。

我对题目的理解是:数组中任意个元素的和等于某个值,把这些元素组合找出来。

如果没有理解错题意的话,我写不出来这种算法,组合太多了。

php求最大连续出现次数的算法,见问题详细

<?php

//Code by jhk

function get_array_repeats(array $array,$string) {

/*

函数说明:计算$string在$array(需为数组)中重复出现的次数.

*/

$count = array_count_values($array);

foreach ($count as $key => $value) {

if ($key = $string) {

return $value;

}

}

}

?>

php数组问题

全部看一遍就知道了

array_change_key_case —

返回字符串键名全为小写或大写的数组

array_chunk — 将一个数组分割成多个

array_combine —

创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值

array_count_values —

统计数组中所有的值出现的次数

array_diff_assoc —

带索引检查计算数组的差集

array_diff_key —

使用键名比较计算数组的差集

array_diff_uassoc —

用用户提供的回调函数做索引检查来计算数组的差集

array_diff_ukey —

用回调函数对键名比较计算数组的差集

array_diff — 计算数组的差集

array_fill_keys —

使用指定的键和值填充数组

array_fill — 用给定的值填充数组

array_filter — 用回调函数过滤数组中的单元

array_flip — 交换数组中的键和值

array_intersect_assoc —

带索引检查计算数组的交集

array_intersect_key —

使用键名比较计算数组的交集

array_intersect_uassoc —

带索引检查计算数组的交集,用回调函数比较索引

array_intersect_ukey —

用回调函数比较键名来计算数组的交集

array_intersect — 计算数组的交集

array_key_exists —

检查给定的键名或索引是否存在于数组中

array_keys — 返回数组中所有的键名

array_map — 将回调函数作用到给定数组的单元上

array_merge_recursive —

递归地合并一个或多个数组

array_merge — 合并一个或多个数组

array_multisort —

对多个数组或多维数组进行排序

array_pad — 用值将数组填补到指定长度

array_pop — 将数组最后一个单元弹出(出栈)

array_product — 计算数组中所有值的乘积

array_push — 将一个或多个单元压入数组的末尾(入栈)

array_rand — 从数组中随机取出一个或多个单元

array_reduce —

用回调函数迭代地将数组简化为单一的值

array_replace_recursive

— 使用传递的数组递归替换第一个数组的元素

array_replace —

使用传递的数组替换第一个数组的元素

array_reverse — 返回一个单元顺序相反的数组

array_search —

在数组中搜索给定的值,如果成功则返回相应的键名

array_shift — 将数组开头的单元移出数组

array_slice — 从数组中取出一段

array_splice —

把数组中的一部分去掉并用其它值取代

array_sum — 计算数组中所有值的和

array_udiff_assoc —

带索引检查计算数组的差集,用回调函数比较数据

array_udiff_uassoc —

带索引检查计算数组的差集,用回调函数比较数据和索引

array_udiff — 用回调函数比较数据来计算数组的差集

array_uintersect_assoc —

带索引检查计算数组的交集,用回调函数比较数据

array_uintersect_uassoc

— 带索引检查计算数组的交集,用回调函数比较数据和索引

array_uintersect —

计算数组的交集,用回调函数比较数据

array_unique — 移除数组中重复的值

array_unshift —

在数组开头插入一个或多个单元

array_values — 返回数组中所有的值

array_walk_recursive —

对数组中的每个成员递归地应用用户函数

array_walk — 对数组中的每个成员应用用户函数

array — 新建一个数组

arsort — 对数组进行逆向排序并保持索引关系

asort — 对数组进行排序并保持索引关系

compact — 建立一个数组,包括变量名和它们的值

count — 计算数组中的单元数目或对象中的属性个数

current — 返回数组中的当前单元

each — 返回数组中当前的键/值对并将数组指针向前移动一步

end — 将数组的内部指针指向最后一个单元

extract — 从数组中将变量导入到当前的符号表

in_array — 检查数组中是否存在某个值

key — 从关联数组中取得键名

krsort — 对数组按照键名逆向排序

ksort — 对数组按照键名排序

list — 把数组中的值赋给一些变量

natcasesort —

用“自然排序”算法对数组进行不区分大小写字母的排序

natsort — 用“自然排序”算法对数组排序

next — 将数组中的内部指针向前移动一位

pos — current 的别名

prev — 将数组的内部指针倒回一位

range — 建立一个包含指定范围单元的数组

reset — 将数组的内部指针指向第一个单元

rsort — 对数组逆向排序

shuffle — 将数组打乱

sizeof — count 的别名

sort — 对数组排序

uasort —

使用用户自定义的比较函数对数组中的值进行排序并保持索引关联

uksort — 使用用户自定义的比较函数对数组中的键名进行排序

usort —

使用用户自定义的比较函数对数组中的值进行排序

关于php数组算法题的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。

查看更多关于php数组算法题 php数组数据结构的详细内容...

声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did211450
更新时间:2023-05-03   阅读:24次

上一篇: php接口网关有什么用 php接口网关有什么用处

下一篇:我的世界php服务器 我的世界php服务器地址

最新资料更新

  • 1.phpmysql框架 php框架yii
  • 2.php实例上传txt代码的简单介绍
  • 3.php在线制作教程 用php技术做的作品
  • 4.怎么写php需求 php市场需求
  • 5.phpmp3播放 php播放器本地视频
  • 6.php接收url php接收json数据
  • 7.包含Zend转php的词条
  • 8.php的如何使用数组if php中数组
  • 9.iconv函数php iconv函数参数
  • 10.php的环境安装 phpstudy安装环境
  • 11.macphp执行权限 macbookpro权限
  • 12.zendphp调试 调试教程
  • 13.php美国东部时间 美国东部时间 换算
  • 14.php接收xml异常 php处理xml数据
  • 15.phpu=13647的简单介绍
  • 16.phpdelete的简单介绍
  • 17.php开启sslopen php开启gd库
  • 18.php的特点有. 简述什么是php?php的主要特点有哪些?
  • 19.php文本转字节 php字符转换成数字
  • 20.php个人博客ppt php博客模板

CopyRight:2016-{hedonghua:year}{hedonghua:sitegs} 备案ICP:湘ICP备09009000号-16 {hedonghua:sitejym}
本站资讯不构成任何建议,仅限于个人分享,参考须谨慎!
本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。

网站内容来源于网络分享,如有侵权发邮箱到:kenbest@126.com,收到邮件我们会即时下线处理。
网站框架支持:HDHCMS   51LA统计 百度统计
Copyright © 2018-2026 「好得很程序员自学网」
[ SiteMap ]