冒泡演算法排序
基本思想:
對需要排序的陣列從後往前(逆序)進行多遍的掃瞄,當發現相鄰的兩個數值的次序與排序要求的規則不一致時,就將這兩個數值進行交換。這樣比較小(大)的數值就將逐漸從後面向前面移動。
public
function
bubblesort()
}}}
快速排序
基本思想:
在陣列中挑出乙個元素(一般為第乙個)作為標尺,掃瞄一遍陣列將比標尺小的元素排在標尺之前,將所有比標尺大的元素排在標尺之後,將小的陣列和大的陣列通過遞迴再次排序,當陣列變成最小陣列,所有陣列再次合併組成新的陣列。
public
function
quicksort
($arr
)$first_num
=$arr[0
];//選擇乙個標尺 選擇第乙個元素
$left_array
=array()
;//小於標尺的
$right_array
=array()
;//大於標尺的
for($i=
1;$i<
$length;$i
++)else
}$left_array
=quicksort
($left_array);
$right_array
=quicksort
($right_array);
return
array_merge
($left_array
,array
($first_num),
$right_array);
}
二分查詢(必須是有序的)
基本思想:
假設資料是按公升序排序的,對於給定值x,從序列的中間位置開始比較,如果當前位置值等於x,則查詢成功;若x小於當前位置值,則在數列的前半段中查詢;若x大於當前位置值則在數列的後半段中繼續查詢,直到找到為止。(資料量大的時候使用)
public
function
binsearch
($arr
,$low
,$high,$k
)elseif(
$k<
$arr
[$mid])
else
}return-1
;}
遍歷資料夾
public
function
eachdir
($dir
)else}}
closedir
($handle);
}return
$files
;}
獲取url副檔名
public
function
getext
($url
)
php面試題(三)
一 填空題 1.php是用什麼語言編寫的 基於c語言的 2.目前php的最高版本是 php 5.5版本 3.lamp的全稱是 linux apache mysql perl php python 4.php的三種注釋方式 1 echo www.phpddt.com 單行注釋 2 多行注釋 echo ...
php面試題(三)
注意 這是一篇比較基礎的php面試題的 一 填空題 1.php是用什麼語言編寫的 基於c語言的 2.目前php的最高版本是 php 5.4版本 3.lamp的全稱是 linux apache mysql perl php python 4.php的三種注釋方式 1 echo www.phpddt.c...
演算法面試題三
螺旋佇列問題 看清一下數字排列的規律,設1點的座標是 0,0 x方向向右為正,y方向向下為正,列如7的座標是 1,1 2的座標是 0,1 3的座標是 1,1 程式設計實現輸入任意一點座標 x,y 輸出所對應的數字。21 22 20 7 8 9 10 19 6 1 2 11 18 5 4 3 12 1...