php数据结构算法.docx

上传人:b****8 文档编号:10461024 上传时间:2023-02-13 格式:DOCX 页数:8 大小:15.86KB
下载 相关 举报
php数据结构算法.docx_第1页
第1页 / 共8页
php数据结构算法.docx_第2页
第2页 / 共8页
php数据结构算法.docx_第3页
第3页 / 共8页
php数据结构算法.docx_第4页
第4页 / 共8页
php数据结构算法.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

php数据结构算法.docx

《php数据结构算法.docx》由会员分享,可在线阅读,更多相关《php数据结构算法.docx(8页珍藏版)》请在冰豆网上搜索。

php数据结构算法.docx

php数据结构算法

php数据结构算法

JS学习

//--------------------

//基本数据结构算法

//--------------------

//二分查找(数组里查找某个元素)

functionbin_sch($array,$low,$high,$k){ 

   if($low<=$high){ 

       $mid=intval(($low+$high)/2); 

       if($array[$mid]==$k){ 

           return$mid; 

       }elseif($k<$array[$mid]){ 

           returnbin_sch($array,$low,$mid-1,$k); 

       }else{ 

           returnbin_sch($array,$mid+1,$high,$k); 

       } 

   } 

   return-1; 

} php基础

//顺序查找(数组里查找某个元素)

functionseq_sch($array,$n,$k){ 

   $array[$n]=$k; 

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

       if($array[$i]==$k){ 

           break; 

       } 

   } 

   if($i<$n){ 

       return$i; 

   }else{ 

       return-1; 

   } 

//线性表的删除(数组中实现)

functiondelete_array_element($array,$i)

{

       $len=count($array); 

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

               $array[$j]=$array[$j+1];

       }

       array_pop($array);

       return$array;

}php基础

//冒泡排序(数组排序)

functionbubble_sort($array)

{

       $count=count($array);

       if($count<=0)returnfalse;

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

               for($j=$count-1;$j>$i;$j--){

                       if($array[$j]<$array[$j-1]){

                               $tmp=$array[$j];

                               $array[$j]=$array[$j-1];

                               $array[$j-1]=$tmp;

                       }

               }

       }

       return$array;

}php基础

//快速排序(数组排序)

functionquick_sort($array){

       if(count($array)<=1)return$array;

       $key=$array[0];

       $left_arr=array();

       $right_arr=array();

       for($i=1;$i

               if($array[$i]<=$key)

                       $left_arr[]=$array[$i];

               else

                       $right_arr[]=$array[$i];

       }

       $left_arr=quick_sort($left_arr);

       $right_arr=quick_sort($right_arr);

       returnarray_merge($left_arr,array($key),$right_arr);

}

 

//------------------------

//PHP内置字符串函数实现

//------------------------

//字符串长度

functionstrlen($str)php基础

{

       if($str=='')return0;

       $count=0;

       while

(1){

               if($str[$count]!

=NULL){

                       $count++;

                       continue;

               }else{

                       break;

               }

       }

       return$count;

}

//截取子串

functionsubstr($str,$start,$length=NULL)

{

       if($str==''||$start>strlen($str))return;

       if(($length!

=NULL)&&($start>0)&&($length>strlen($str)-$start))return;

       if(($length!

=NULL)&&($start<0)&&($length>strlen($str)+$start))return;

       if($length==NULL)$length=(strlen($str)-$start);

        

       if($start<0){

               for($i=(strlen($str)+$start);$i<(strlen($str)+$start+$length);$i++){

                       $substr.=$str[$i];

               }

       }php基础

       if($length>0){

               for($i=$start;$i<($start+$length);$i++){

                       $substr.=$str[$i];

               }

       }

       if($length<0){

               for($i=$start;$i<(strlen($str)+$length);$i++){

                       $substr.=$str[$i];

               }

       }

       return$substr;

}

//字符串翻转

functionstrrev($str)

{

       if($str=='')return0;

       for($i=(strlen($str)-1);$i>=0;$i--){

               $rev_str.=$str[$i];

       }

       return$rev_str;

}

//字符串比较

functionstrcmp($s1,$s2)

{

       if(strlen($s1)

       if(strlen($s1)>strlen($s2))return1;

       for($i=0;$i

               if($s1[$i]==$s2[$i]){

                       continue;

               }else{

                       returnfalse;

               }

       }

       return0;

}php基础

//查找字符串

functionstrstr($str,$substr)

{

       $m=strlen($str);

       $n=strlen($substr);

       if($m<$n)returnfalse;

       for($i=0;$i<=($m-$n+1);$i++){

               $sub=substr($str,$i,$n);

               if(strcmp($sub,$substr)==0) return$i;

       }

       returnfalse;

}

//字符串替换

functionstr_replace($substr,$newsubstr,$str)

{

       $m=strlen($str);

       $n=strlen($substr);

       $x=strlen($newsubstr);

       if(strchr($str,$substr)==false)returnfalse;

       for($i=0;$i<=($m-$n+1);$i++){

               $i=strchr($str,$substr);

               $str=str_delete($str,$i,$n);

               $str=str_insert($str,$i,$newstr);

       }

       return$str;

}

 

//--------------------

//自实现字符串处理函数

//--------------------

//插入一段字符串

functionstr_insert($str,$i,$substr)

{

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

               $startstr.=$str[$j];

       }

       for($j=$i;$j

               $laststr.=$str[$j];

       }

       $str=($startstr.$substr.$laststr);

       return$str;

}php基础

//删除一段字符串

functionstr_delete($str,$i,$j)

{

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

               $startstr.=$str[$c];

       }

       for($c=($i+$j);$c

               $laststr.=$str[$c];

       }

       $str=($startstr.$laststr);

       return$str;

}php基础

//复制字符串

functionstrcpy($s1,$s2)

{

       if(strlen($s1)==NULL||!

isset($s2))return;

       for($i=0;$i

               $s2[]=$s1[$i];

       }

       return$s2;

}

//连接字符串

functionstrcat($s1,$s2)

{

       if(!

isset($s1)||!

isset($s2))return;

       $newstr=$s1;

       for($i=0;$i

               $newstr.=$st[$i];

       }

       return$newsstr;

}

//简单编码函数(与php_decode函数对应)

functionphp_encode($str)

{

       if($str==''&&strlen($str)>128)returnfalse;

       for($i=0;$i

               $c=ord($str[$i]);

               if($c>31&&$c<107)$c+=20;

               if($c>106&&$c<127)$c-=75;

               $word=chr($c);

               $s.=$word;

       } 

       return$s; 

}

//简单解码函数(与php_encode函数对应)

functionphp_decode($str)

{

       if($str==''&&strlen($str)>128)returnfalse;

       for($i=0;$i

               $c=ord($word);

               if($c>106&&$c<127)$c=$c-20;

               if($c>31&&$c<107)$c=$c+75;

               $word=chr($c);

               $s.=$word;

       } 

       return$s; 

}

//简单加密函数(与php_decrypt函数对应)

functionphp_encrypt($str)

{

       $encrypt_key='abcdefghijklmnopqrstuvwxyz1234567890';

       $decrypt_key='ngzqtcobmuhelkpdawxfyivrsj2468021359';

       if(strlen($str)==0)returnfalse;

       for($i=0;$i

               for($j=0;$j

                       if($str[$i]==$encrypt_key[$j]){

                               $enstr.=$decrypt_key[$j];

                               break;

                       }

               }

       }

       return$enstr;

}

//简单解密函数(与php_encrypt函数对应)

functionphp_decrypt($str)

{

       $encrypt_key='abcdefghijklmnopqrstuvwxyz1234567890';

       $decrypt_key='ngzqtcobmuhelkpdawxfyivrsj2468021359';

       if(strlen($str)==0)returnfalse;

       for($i=0;$i

               for($j=0;$j

                       if($str[$i]==$decrypt_key[$j]){

                               $enstr.=$encrypt_key[$j];

                               break;

                       }

               }

       }

       return$enstr;

}

?

>

php基础

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1