<?php
$arrDates = array(
"12/25/2009","01/10/2008","02/12/2000","03/17/1948",
"03/06/1948","11/25/1972","10/23/2009","01/14/2008",
"02/22/2000","03/27/1948","03/16/1948","11/24/1972",
"11/13/2009","11/10/2008","12/12/2000","05/17/1948",
"05/06/1948","10/25/1972","09/23/2009","02/14/2008",
"03/22/2000","04/27/1948","04/16/1948","08/24/1972"
);
/**
* swapValue2()
* @param array $array
* @param int $dex
* @param int $dex2
* swap two array values
**/
function swapValues2( $array, $dex, $dex2 ) {
list($array[$dex],$array[$dex2]) = array($array[$dex2], $array[$dex]);
return $array;
}
/**
* bubbleSort()
* @param array $array
* performs bubble sort using optimized implementation
**/
function bubbleSort( $array)
{
for( $out=0, $size = count($array);
$out < $size - 1 ;
$out++ )
{
for( $in = $out + 1;
$in < $size;
$in++ )
{
if (strtotime($array[ $out ]) >
strtotime($array[ $in ]))
{
$array = swapValues2($array, $out, $in);
}
}
}
return $array;
}
var_dump(bubbleSort($arrDates));
preferences:
54.84 ms | 402 KiB | 5 Q