(20分)用PHP如何取出数组中值最大的一组元素?

不是用什么max之类的函数取,我想取得数组中,值最大的一组元素!比如说:$array=('a'=>2,'b'=>1,'c'=>5,'d'=>12,'e'=>12,'f'=... 不是用什么max之类的函数取,我想取得数组中,值最大的一组元素!比如说:
$array = ('a'=>2,'b'=>1,'c'=>5,'d'=>12,'e'=>12,'f'=>3);
这个数组中d和e都为最大的,如果返回一个包含这两个元素的数组?
打错了,是:$array = array('a'=>2,'b'=>1,'c'=>5,'d'=>12,'e'=>12,'f'=>3);
展开
 我来答
阳光上的桥
2009-03-25 · 知道合伙人软件行家
阳光上的桥
知道合伙人软件行家
采纳数:21423 获赞数:65813
网盘是个好东东,可以对话和传文件

向TA提问 私信TA
展开全部
其实我很想不通什么时候有这种需求,是不是你们老师布置这些作业很无聊~

程序如下:

<?php
//数组赋值
$array = array('a'=>2,'b'=>1,'c'=>5,'d'=>12,'e'=>12,'f'=>3);
//搜索最大元素
foreach ($array as $key=>$val) if (empty($maxval) || $val>$maxval) $maxval=$val;
//构造新的数组
foreach ($array as $key=>$val) if ($val==$maxval) $max_arr[$key]=$val;
//输出新的数组
print_r($max_arr);
?>

输出结果为:

E:\ygb>php a.php
Array
(
[d] => 12
[e] => 12
)
hjyxiaobei
2009-04-06
知道答主
回答量:4
采纳率:0%
帮助的人:0
展开全部
最土的方法就是把数组元素比大小,一个一个遍历,这样会导致效率低。具体方法用两个for()嵌套循环。

还有一种简单的方法:你可以先用rsort();先对其进行降序排序,在取出第一个元素;
$array =array('a'=>2,'b'=>1,'c'=>5,'d'=>12,'e'=>12,'f'=>3);
rsort($array);
echo $array[0];//最大的元素;
所谓的最大 不一定是数字最大要看你数组存的是什么类型的如果是数字那就是数字的最大值,如果是其他字符那就是其asicll码的最大值。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
丶紫影月
2015-09-11 · 超过15用户采纳过TA的回答
知道答主
回答量:78
采纳率:0%
帮助的人:30.7万
展开全部
先说一下思路
1. 用PHP函数排序
sort() - 以升序对数组排序
rsort() - 以降序对数组排序
asort() - 根据值,以升序对关联数组进行排序
ksort() - 根据键,以升序对关联数组进行排序
arsort() - 根据值,以降序对关联数组进行排序
krsort() - 根据键,以降序对关联数组进行排序
案例:
<?php
$numbers=array(3,5,1,22,11);
sort($numbers);

$arrlength=count($numbers);
for($x=0;$x<$arrlength;$x++)
{
echo $numbers[$x];
echo "<br>";
}
?>

2. 自己编写函数取出数组中的两个数值比较,取大的跟后一个数值比较,直到结束
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tzb12qaqaqa
2009-03-26 · 超过33用户采纳过TA的回答
知道小有建树答主
回答量:90
采纳率:0%
帮助的人:99.6万
展开全部
<?php
$array = array('a'=>2,'b'=>1,'c'=>5,'d'=>12,'e'=>12,'f'=>3);
$tmp_arr = $array;
rsort($tmp_arr);//排序
foreach ($array as $k => $v) {
if ($v === $tmp_arr[0])$res[$k] = $v;
}
print_r($res);

?>
rsort()算不算max之类的函数?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
庆思巨翰飞
2019-10-27 · TA获得超过3796个赞
知道大有可为答主
回答量:3090
采纳率:29%
帮助的人:209万
展开全部
先说一下思路
1.
用PHP函数排序
sort()
-
以升序对数组排序
rsort()
-
以降序对数组排序
asort()
-
根据值,以升序对关联数组进行排序
ksort()
-
根据键,以升序对关联数组进行排序
arsort()
-
根据值,以降序对关联数组进行排序
krsort()
-
根据键,以降序对关联数组进行排序
案例:
<?php
$numbers=array(3,5,1,22,11);
sort($numbers);
$arrlength=count($numbers);
for($x=0;$x<$arrlength;$x++)
{
echo
$numbers[$x];
echo
"<br>";
}
?>
2.
自己编写函数取出数组中的两个数值比较,取大的跟后一个数值比较,直到结束
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式