美文网首页
PHP插入排序

PHP插入排序

作者: 程序小白菜 | 来源:发表于2019-06-11 14:52 被阅读0次
    /**
     * @param array $arr
     * @return array
     */
    function insertionSort(array $arr) {
        $len = count($arr);
        if (!$len || empty($arr)) {
            return [];
        }
    
        for($i = 1; $i < $len; $i ++) {
            //已做到0-i-1位置上有序,现想做到0-i位置上有序
            for($j = $i - 1; $j>=0 && $arr[$j] > $arr[$j+1]; $j--) {
                swap($arr, $j, $j+1);
            }
        }
    }
    
    /**
     * @param array $arr
     * @param $first
     * @param $second
     */
    function swap(array &$arr, $first, $second) {
        $temp = $arr[$first];
        $arr[$first] = $arr[$second];
        $arr[$second] = temp;
    }
    

    相关文章

      网友评论

          本文标题:PHP插入排序

          本文链接:https://www.haomeiwen.com/subject/ehrqfctx.html