php 求一个无序数组经过排列后任意两个相邻元素之差的最大值(算法)
来源:互联网 发布:网络8888端口 编辑:程序博客网 时间:2024/05/19 19:32
在这里不使用sort,rsort等函数排序
sort() 函数用于对数组单元从低到高进行排序。rsort() 函数用于对数组单元从高到低进行排序。asort() 函数用于对数组单元从低到高进行排序并保持索引关系。arsort() 函数用于对数组单元从高到低进行排序并保持索引关系。ksort() 函数用于对数组单元按照键名从低到高进行排序。krsort() 函数用于对数组单元按照键名从高到低进行排序。
max(),min()等函数都是可以直接求出最大最小值
<?php class Captrue{ //冒泡排序 public function getMax($arr){ $c = null;$i=0; foreach($arr as $key=>$value){ foreach($arr as $k=>$v){ if($arr[$key]>$arr[$k]){ $c = $arr[$key]; $arr[$key] = $arr[$k]; $arr[$k] = $c; $i++; } } } return $arr; } //归并算法 public function getCha($arr){ $storer = array(); $c = null; foreach($arr as $key=>$value){ $storer[] = $arr[$key]-$arr[$key+1]; } foreach($storer as $key=>$value){ foreach($storer as $k=>$v){ if($storer[$key]>$storer[$k]){ $c = $storer[$key]; $storer[$key] = $storer[$k]; $storer[$k] = $c; } } } return $storer[0]; } //计数排序 public function getArr($arr){ $arrMax = max($arr); $arrMin = min($arr); $c = 0; $a = array(); $array = array(); for($i=0;$i<=($arrMax-$arrMin);$i++){ $array[$i] = null; } foreach($arr as $key=>$value){ $array[$value] = $value; } foreach($array as $key=>$value){ if(!$value){ $c++; $a[]=$c; }else{ $c=0; } }// var_dump($array); return max($a); } //桶排序 暂时没有出结果 public function getQJ($arr){ $arrMax = max($arr); $arrMin = min($arr); $n = ceil(($arrMax-$arrMin)/count($arr)); $array = array(); for($i=0;$i<=count($arr);$i++){ $array[$i] = null; } foreach ($arr as $key=>$value) {// if(){//// } } return $n; } }
0 0
- php 求一个无序数组经过排列后任意两个相邻元素之差的最大值(算法)
- 数据结构之——找到无序数组中排序后相邻元素差值的最大值
- 数据结构之——找到无序数组中排序后相邻元素差值的最大值
- 无序数组O(n)时间找到排序后的两个相邻元素使得他们之间的差最大
- 求数组中两个元素差的最大值
- 给定一个无序数组,求这组数在排序后相邻数间差的最大值
- 一个无序实数数组中的相邻两个元素的最大差值
- 在线性时间和空间复杂度内,求大小相邻两元素之差的最大值
- 求数组相邻元素差值的最大值快速算法(C++版)
- 用单循环链表存储一个环上的数据,并计算任意两个相邻元素之差是否超过2
- 重排数列--是否存在排列,排列后数组的每两个相邻元素的乘积都是4的倍数
- 动态规划系列---求数组中两个元素差的最大值
- 动态规划系列---求数组中两个元素差的最大值
- 求一个数组中两个不重叠子数组和的差的最大值
- poj2479-在一个数组中求任意不相交的两个子数组之和的最大值
- 算法习题45:对于一个整数矩阵,存在一种运算,对矩阵中任意元素加一时,需要其相邻(上下左右)某一个元素也加一;;;一个整数数组,长度为n,将其分为m份,使各份的和相等,求m的最大值
- 无序数组求相邻元素最大差值(tiger基金的笔试题)
- 求数组排序后相邻两个数的最大差值
- android uiautomator 一个截屏并且以当前时间命名图片名的方法
- WIFI相关
- 数据结构与算法笔记 lesson 16 八皇后问题
- Qt中显示一个窗体的方法
- 还在使用 Synchronized同步?试试 Volatile 吧,让你的代码更高效
- php 求一个无序数组经过排列后任意两个相邻元素之差的最大值(算法)
- 远程代答系统的使用方法
- 使用Jersey客户端请求Spring Boot(RESTFul)服务
- centOS7安装matlab2014a
- 《增长黑客》读书笔记
- linux 下删除文件中的前三列 (也就是取第四列到最后一列的内容)
- ADB命令
- 集合框架
- Eclipse快捷键大全