<?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();
?>
无标题文章
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 本文案例和图片均来自网络,与现实无关,请勿对号入座,如有侵权,请联系作者删除。 网友自述: “我跟他不在一个高中,...