求助 php数组排序问题 面试题
时间:2008-09-05
来源:互联网
$a=array(
9,
1,
3,
6,
8,
);
上面这个要变成这个,
$a=array(
1,
3,
4,
8,
9,
);
用什么方法
不能用PHP自带函数
非常感谢!!!!!
作者: liuhaibin 发布时间: 2008-09-05
$values = array(9, 3, 2 , 6, 8);
foreach($values as $val){
$min = min($values);
$key = array_search($min, $values);
$result[] = $min;
unset($values[$key]);
}
print_r($result);
[/php]
如有键名可以再加上去掉键名的一步键名~
作者: haowubai 发布时间: 2008-09-05
作者: 神啊 发布时间: 2008-09-05
作者: xup1zqz 发布时间: 2008-09-05

作者: hierophant 发布时间: 2008-09-05
作者: mengyu 发布时间: 2008-09-05

作者: peiguohui88 发布时间: 2008-09-05
受益匪浅~~
作者: 神啊 发布时间: 2008-09-05
function BubbleSort($str)
{
for ($i=0;$i<count($str);$i++)
{
for ($j=count($str)-2;$j>=$i;$j--)
{
if($str[$j+1]<$str[$j])
{
$tmp = $str[$j+1];
$str[$j+1]=$str[$j];
$str[$j]=$tmp;
}
}
}
return $str;
}
$str = array(3,6,1,5,9,0,4,6,11);
print_r(BubbleSort($str));
[/php]
作者: returneret 发布时间: 2008-09-05
作者: php好1 发布时间: 2008-09-05
<?php
function BubbleSort($str)
{
for ($i=0;$i<count($str);$i++)
{
.......
鄙视你啊,让你写,不是让你找,谁不会啊
作者: 神啊 发布时间: 2008-09-05
<html>
<head><title>冒泡排序法演示</title><head>
<style>
h1{text-align: center; color: blue;}
table{font-size: 12px; font-family: arial; background-color: black; text-align: center;}
td{background-color: white;}
.base{background-color: #0FF;}
.light{background-color: #0DD;}
.title{background-color: #3FF; text-align: center;}
</style>
<body>
<h1>冒泡排序法演示</h1>
<table cellpadding="5" cellspacing="1" border="0" align="center">
<?php
//随机生成数组
$arr=array();
echo '<tr><td colspan="10" class="title">初始值</td></tr>';
echo '<tr>';
for($i=0;$i<10;$i++){
$arr[$i]=rand();
echo "<td>\$arr[$i]={$arr[$i]}</td>";
}
//进行冒泡法排序
for($i=9;$i>0;$i--){
echo '<tr><td colspan="10" class="title">第'.(10-$i).'次</td></tr>';
for($j=0;$j<$i;$j++){
if($arr[$j]<$arr[$j+1]){
$tmp=$arr[$j];
$arr[$j]=$arr[$j+1];
$arr[$j+1]=$tmp;
}
echo '<tr>';
for($k=0;$k<10;$k++){
switch($k){
case $j : echo '<td class="base">'; break;
case $j+1 : echo '<td class="light">'; break;
default : echo '<td>';
}
echo "\$arr[$k]={$arr[$k]}</td>";
}
echo '</tr>';
}
}
//显示排序结果
echo '<tr><td colspan="10" class="title">结果</td></tr>';
echo '<tr>';
for($i=0;$i<10;$i++){
echo "<td>\$arr[$i]={$arr[$i]}</td>";
}
echo '</tr>';
?>
</table>
</body></html>
[/php]
作者: returneret 发布时间: 2008-09-05
{
for ($i=0;$i<count($str);$i++)
{
for ($j=i+1;$j<count($str);$j++)
{
if($str[$i]>$str[$j])
{
$tmp = $str[$j];
$str[$j]=$str[$i];
$str[$i]=$tmp;
}
}
}
return $str;
}
-------------------------------------------------------------------
随便改了一下,不知道行不行.
作者: zshmail 发布时间: 2008-09-05
作者: 蓝海 发布时间: 2008-09-05
function add($strs){
$i = strlen($strs);
for($a=$i;$a>=0;$a--){
echo $strs{$a};
}
}
add(abcd);
?> 这是我写的 可惜了还是用到了函数...
作者: mataoangel 发布时间: 2008-09-05
$s = "ABCDEF";
$i=0;
while(isset($s{$i})) {
$r = $s{$i}.$r; //这个语句不是很明白? $s{$i} 这是什么意思?
$i++;
}
echo $r;
?>
这是高手写的 . $r 我不明白是 什么意思
作者: mataoangel 发布时间: 2008-09-05
作者: alexchang 发布时间: 2008-09-26
二种方法都OK
作者: 雁行天下 发布时间: 2008-09-28
作者: alexchang 发布时间: 2008-09-28
作者: symbolamb 发布时间: 2008-09-29
php似乎有更简单的做法,,就像站长写的那样,,
后面那个兄弟用的就是冒泡法
作者: chatop 发布时间: 2008-09-29

作者: lampsister 发布时间: 2008-10-01
作者: cmq86 发布时间: 2009-11-02
作者: laobi 发布时间: 2009-11-02
什么语言都一样,这题不算难
作者: 恋恋秋风 发布时间: 2009-11-02
作者: pino_ 发布时间: 2010-04-08
作者: zxy123 发布时间: 2010-04-24
作者: zwaspace 发布时间: 2010-04-25
作者: liuhao123 发布时间: 2010-05-28

作者: a28794708 发布时间: 2010-09-03
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28