• php实现插入排序


    插入排序原理:输入一个元素,检查数组列表中的每个元素,将其插入到一个已经排好序的数列中的适当位置,使数列依然有序,当最后一个元素放入合适位置时,该数组排序完毕。

    php实现方法1:

    function insert($array){
    	$count=count($array);
    	if($count<=1){
    		return $array;
    	}
    	for($i=1;$i<$count;$i++){
    		$temp=$array[$i];
    		for($j=$i-1;$j>=0;$j--){
    			if($array[$j]>$temp){
    				$array[$j+1]=$array[$j];
    				$array[$j]=$temp;
    			}else{
    				break;
    			}
    		}		
    	}
    	return $array;
    }
    

     php实现方法2:

     1 function insert($array){
     2     $count=count($array);
     3     if($count<=1){
     4         return $array;
     5     }
     6     for($i=1;$i<$count;$i++){
     7         $temp=$array[$i];
     8         for($j=$i-1;$j>=0;$j--){
     9             if($array[$j]>$temp){
    10                 $array[$j+1]=$array[$j];                
    11             }else{
    12                 break;
    13             }
    14         }
    15         $array[$j+1]=$temp;
    16     }
    17     return $array;
    18 }

    php实现3:

     1 function insert($array){
     2     $count=count($array);
     3     if($count<=1){
     4         return $array;
     5     }
     6     for($i=1;$i<$count;$i++){
     7         $temp=$array[$i];
     8         $j=$i-1;
     9         while($j>=0&&$array[$j]>$temp){
    10             $array[$j+1]=$array[$j];
    11             $j=$j-1;
    12         }
    13         $array[$j+1]=$temp;
    14 
    15     }
    16     return $array;
    17 }

    php实现四:

     1 function insert($array){
     2     $count=count($array);
     3     if($count<=1){
     4         return $array;
     5     }
     6     for($i=1;$i<$count;$i++){
     7         $temp=$array[$i];
     8         $j=$i-1;
     9         while($j>=0&&$array[$j]>$temp){
    10             $array[$j+1]=$array[$j];
    11             $array[$j]=$temp;
    12             $j=$j-1;
    13         }
    14     }
    15     return $array;
    16 }

    希望对大家有帮助,有时间用c实现下插入排序的代码。

  • 相关阅读:
    剑指offer-面试题23.从上往下打印二叉树
    C++静态成员函数不能调用非静态成员变量
    程序的堆区和栈区
    C++空类的大小
    struct内存对齐
    LeeCode(Database)-Customers Who Never Order
    LeeCode(Database)-Duplicate Emails
    LeeCode(Database)-Employees Earning More Than Their Managers
    LeeCode(Database)-Combine Two Tables
    剑指offer-面试题22.栈的压入,弹出序列
  • 原文地址:https://www.cnblogs.com/hylaz/p/4375148.html
Copyright © 2020-2023  润新知