<?php 

$arr = [8,2,5,9,7];
//获取数组单元个数
$count = count($arr);
//外层循环用于从未排序区域中取出待排序元素
for ($i=1; $i < $count; $i++) {
    //获取当前需要插入已排序区域的元素值
    $temp = $arr[$i];
    //内层循环用于从已排序区域寻找待排序元素的插入位置
    for ($j=$i-1; $j >= 0; $j--) {
        //如果$arr[$i]比已排序区域的$arr[$j]小,就后移$arr[$j]
        if ($temp < $arr[$j]) {        
            $arr[$j+1] = $arr[$j];
            $arr[$j] = $temp;
        } else {
            //如果$arr[$i]不小于$arr[$j],则对已排序区无需再排序
            break;
        }
    }
}

print_r($arr);
xfjpeter (PHP工程师 )- 2020-01-17 0 人
3、插入排序
<?php 

$arr = [8,2,5,9,7];

// 外层循环
for ($i = 0; $i < count($arr); $i++) {
    // 定义最小值位置
    $minPos = $i;

    // 内层循环
    for ($j = $i + 1; $j < count($arr); $j++) {
        // 判断是否小于最小位置的值
        if ($arr[$j] < $arr[$minPos]) {
            // 更新最小位置的值
            $minPos = $j;
        }
    }

    // 交换最小位置的值和当前位置的值
    [$arr[$minPos], $arr[$i]] = [$arr[$i], $arr[$minPos]];
}

print_r($arr);
xfjpeter (PHP工程师 )- 2020-01-17 0 人
2、选择排序
<?php 


$arr = [8,2,5,9,7];

// 外层循环
for ($i = 0; $i < count($arr); $i++) {
    // 内层循环
    for ($j = 0; $j < count($arr) - 1; $j++) {
        // 判断两个数字的大小交换顺序
        if ($arr[$i] < $arr[$j]) {
            $tmp = $arr[$i];
            $arr[$i] = $arr[$j];
            $arr[$j] = $tmp;
        }
    }
}

print_r($arr);
xfjpeter (PHP工程师 )- 2020-01-17 0 人
1、冒泡算法
xfjpeter (PHP工程师 )- 2020-01-17 0 人
css3按钮
// 请写出一下代码执行的结果

setTimeout(() => console.log(1))

new Promise(resolve => {
    console.log(2)
    resolve()
})
.then(() => console.log(3))

console.log(4)
xfjpeter (PHP工程师 )- 2020-01-14 0 人
一道经典的js执行顺序题
// 宏任务:优先级最低
setTimeout(() => console.log('setTimeout'))
// 微任务:优先级第二
new Promise((resolve, reject) => {
    resolve()
    // 主线任务:优先级最高
    console.log('promise')
}).then(value => console.log('成功'))
// 主线任务:优先级最高
console.log('后盾人')
xfjpeter (PHP工程师 )- 2020-01-09 0 人
Promise的理解
没有了
1/5 下一页