// 基本資料結構演算法
//二分查詢(陣列裡查詢某個元素)
function bin_sch($array, $low, $high, $k)elseif ($k < $array[$mid])elseelseelseelse{
return false;
return 0;
//查詢字串
function strstr($str, $substr)
$m = strlen($str);
$n = strlen($substr);
if ($m < $n) return false;
for ($i=0; $i<=($m-$n+1); $i++){
$sub = substr($str, $i, $n);
if (strcmp($sub, $substr) == 0) return $i;
return false;
//字串替換
function str_replace($substr, $newsubstr, $str)
$m = strlen($str);
$n = strlen($substr);
$x = strlen($newsubstr);
if (strchr($str, $substr) == false) return false;
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;
// 自實現字串處理函式
//插入一段字串
function str_insert($str, $i, $substr)
for($j=0; $j
$startstr .= $str[$j];
for ($j=$i; $j
$laststr .= $str[$j];
$str = ($startstr . $substr . $laststr);
return $str;
//刪除一段字串
function str_delete($str, $i, $j)
for ($c=0; $c
$startstr .= $str[$c];
for ($c=($i+$j); $c
$laststr .= $str[$c];
$str = ($startstr . $laststr);
return $str;
//複製字串
function strcpy($s1, $s2)
if (strlen($s1)==null || !isset($s2)) return;
for ($i=0; $i
$s2 = $s1[$i];
return $s2;
//連線字串
function strcat($s1, $s2)
if (!isset($s1) || !isset($s2)) return;
$newstr = $s1;
for($i=0; $i
$newstr .= $st[$i];
return $newsstr;
//簡單編碼函式(與php_decode函式對應)
function php_encode($str)
if ($str=='' && strlen($str)>128) return false;
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函式對應)
function php_decode($str)
if ($str=='' && strlen($str)>128) return false;
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函式對應)
function php_encrypt($str)
$encrypt_key = 'abcdefghijklmnopqrstuvwxyz1234567890';
$decrypt_key = 'ngzqtcobmuhelkpdawxfyivrsj2468021359';
if (strlen($str) == 0) return false;
for ($i=0; $i
for ($j=0; $j
if ($str[$i] == $encrypt_key[$j]){
$enstr .= $decrypt_key[$j];
break;
return $enstr;
//簡單解密函式(與php_encrypt函式對應)
function php_decrypt($str)
$encrypt_key = 'abcdefghijklmnopqrstuvwxyz1234567890';
$decrypt_key = 'ngzqtcobmuhelkpdawxfyivrsj2468021359';
if (strlen($str) == 0) return false;
for ($i=0; $i
for ($j=0; $j
if ($str[$i] == $decrypt_key[$j]){
$enstr .= $encrypt_key[$j];
break;
return $enstr;
php資料結構
1 資料結構的基本概念 資料元素 組成資料的,有一定意義的基本單位 資料項 乙個資料元素可以由若干個資料項組成 資料物件 性質相同的資料元素的集合 資料結構 資料結構是計算機用來組織和儲存資料的方式!具體意義 資料結構是指相互之間存在著一種或者多種關係的資料元素的集合和該集合中資料元素之間的關係組成...
PHP 資料結構演算法
基本資料結構演算法 二分查詢 陣列裡查詢某個元素 function bin sch array,low,high,k elseif k array mid else return 1 順序查詢 陣列裡查詢某個元素 function seq sch array,n,k if i n else 線性表的...
PHP 資料結構演算法
基本資料結構演算法 二分查詢 陣列裡查詢某個元素 function bin sch array,low,high,k elseif k array mid else return 1 順序查詢 陣列裡查詢某個元素 function seq sch array,n,k if i n else 線性表的...