<?php
$arr = array(43,1,21,12,53,67,45,34,99,89);
echo "<pre>";
// 冒泡
function getBuble($arr){
//1、計算數組長度
$len = count($arr);
//2、判斷數組長度
if ($len<=1) {
return $arr;
}
// 3、開始冒泡
for ($i=0; $i < $len; $i++) {
for ($j=0; $j < $len-$i-1; $j++) {
if ($arr[$j]>$arr[$j+1]) {
$tmp = $arr[$j+1];
$arr[$j+1] = $arr[$j];
$arr[$j] = $tmp;
}
}
}
// 4、返回數組
return $arr;
}
// print_r(getBuble($arr));
// 選擇
function getSelect($arr){
// 1、計算數組長度
$len = count($arr);
// 2、判斷數組長度
if ($len <= 1) {
return $arr;
}
// 3、開始選擇
for ($i=0; $i < $len; $i++) {
// 3.1假設第一個數組值為最小值
$p = $i;
for ($j=$i; $j < $len; $j++) {
if ($arr[$j] < $arr[$p]) {
$p = $j;
}
}
if ($p != $i) {
$tmp = $arr[$p];
$arr[$p] = $arr[$i];
$arr[$i] = $tmp;
}
}
// 4、返回數組
return $arr;
}
// print_r(getSelect($arr));
// 插入
// 2=>1 1=>0
// 3=>2 2=>1 1=>0
function getInsert($arr){
// 1、計算數組長度
$len = count($arr);
// 2、判斷數組長度
if ($len <= 1) {
return $arr;
}
// 3、開始插入
for ($i=0; $i < $len; $i++) {
$insertVal = $arr[$i];
$insertIndex = $i-1;
while ($insertIndex >=0 && $arr[$insertIndex] > $insertVal) {
// $arr[$insertIndex+1] = $insertVal;
$arr[$insertIndex+1] = $arr[$insertIndex];
$insertIndex--;
}
$arr[$insertIndex+1] = $insertVal;
}
// 4、返回數組
return $arr;
}
// print_r(getInsert($arr));
// 快速
function quickSort($arr){
// 1、計算數組長度
$len = count($arr);
// 2、判斷數組長度
if ($len <= 1) {
return $arr;
}
// 3、開始排序
// 3.1選取一個中間值
$base_num = $arr[0];
$left_arr = array();
$right_arr = array();
for ($i=1; $i < $len; $i++) {
if ($base_num > $arr[$i]) {
$left_arr[] = $arr[$i];
} else {
$right_arr[] = $arr[$i];
}
}
$left_arr = quickSort($left_arr);
$right_arr = quickSort($right_arr);
// 4、返回數組
return array_merge($left_arr,array($base_num),$right_arr);
}
// print_r(quickSort($arr));
// 單例模式
/**
* 單例模式
*/
class Mymysql
{
private static $conn;
private function __construct()
{
echo "1";
}
public static function getInstance(){
if (!(self::$conn instanceof self)) {
self::$conn = new self;
}
return self::$conn;
}
public function __clone(){
echo '禁止克隆';
}
}
// $mysql = Mymysql::getInstance;
// var_dump($mysql);
class User {
//靜態變量保存全局實例
private static $_instance = null;
//私有構造函數,防止外界實例化對象
private function __construct() {
}
//私有克隆函數,防止外辦克隆對象
private function __clone() {
}
//靜態方法,單例統一訪問入口
static public function getInstance() {
if (is_null ( self::$_instance ) || isset ( self::$_instance )) {
self::$_instance = new self ();
}
return self::$_instance;
}
public function getName() {
echo 'hello world!';
}
}
// echo User::getName;
// 工廠模式
interface IFactory{
public function getName();
}
class Factory{
public static function getInstance($id){
return new $id;
}
}
class A implements IFactory{
private $name = 'aaa';
function getName(){
return $this->name;
}
}
echo Factory::getInstance("A")->getName();
?>
無標題文章
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
推薦閱讀更多精彩內容
- 本文案例和圖片均來自網絡,與現實無關,請勿對號入座,如有侵權,請聯系作者刪除。 網友自述: “我跟他不在一個高中,...