免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 835 | 回复: 0
打印 上一主题 下一主题

php 实现的基本数据结构 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-07-11 15:58 |只看该作者 |倒序浏览
此文章原文转自:
http://blog.csdn.net/phpme/archive/2006/06/22/820476.aspx

此文章作者: phpMe
文章概要:
//--------------------
// 基本数据结构
//--------------------
//二分查找(数组里查找某个元素)
function bin_sch($array, $low, $high, $k){
    if (
$low ){
        
$mid = intval(($low+$high)/2);
        if (
$array[$mid] == $k){
            return
$mid;
        }elseif (
$k ]){
            return
bin_sch($array, $low, $mid-1, $k);
        }else{
            return
bin_sch($array, $mid+1, $high, $k);
        }
    }
    return -
1;
}
//顺序查找(数组里查找某个元素)
function seq_sch($array, $n, $k){
   
$array[$n] = $k;
    for(
$i=0; $i++){
        if(
$array[$i]==$k){
            break;
        }
    }
    if (
$i){
        return
$i;
    }else{
        return -
1;
    }
}
//线性表的删除(数组中实现)
function delete_array_element($array, $i)
{
   
$len = count($array);
    for (
$j=$i; $j++){
        
$array[$j] = $array[$j+1];
    }
   
array_pop($array);
    return
$array;
}
//冒泡排序(数组排序)
function bubble_sort($array)
{
   
$count = count($array);
    if (
$count ;
    for(
$i=0; $i++){
        for(
$j=$count-1; $j>$i; $j--){
            if (
$array[$j] ]){
               
$tmp = $array[$j];
               
$array[$j] = $array[$j-1];
               
$array[$j-1] = $tmp;
            }
        }
    }
    return
$array;
}
//快速排序(数组排序)
function quicksort($array) {
    if (
count($array) ;
   
$key = $array[0];
   
$left_arr = array();
   
$right_arr = array();
    for (
$i=1; $i++){
        if (
$array[$i] )
            
$left_arr[] = $array[$i];
        else
            
$right_arr[] = $array[$i];
    }
   
$left_arr = quicksort($left_arr);
   
$right_arr = quicksort($right_arr);
    return
array_merge($left_arr, array($key), $right_arr);
}



本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/10599/showart_139167.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP