본문 바로가기

PHP 버블소트 알고리즘

반응형
PHP 버블소트 알고리즘
-------------------------------------------------------------------------------------------
<?php
  /*
   Esta função troca o valor de duas variáveis entre si.
   Opcional. Pode ser embutido na bolha
  */
   function swap(&$valor_1, &$valor_2) {
     $valor_1_antigo = $valor_1;
     $valor_2_antigo = $valor_2;
        
     $valor_1 = $valor_2_antigo;
     $valor_2 = $valor_1_antigo;
    }
        
    /* Array de teste */
    $arrToSort = array(1, 4, 7, 3, 8, 9, 10);
        
    /* a BOLHA! ;-) */
    for ($i = 0; $i < count($arrToSort); $i++) {
      for ($j = $i; $j < count($arrToSort); $j++) {
         if ($arrToSort[$i] > $arrToSort[$j]) {
             swap($arrToSort[$i], $arrToSort[$j]);
          }
       }
     }
        
     /* Opcional. Exibe o array de um jeito que nós podemos entender! =D */
     print_r($arrToSort);
?>
-------------------------------------------------------------------------------------------
<?php
function BubbleSort( $items ) {
    $temp = "";
    $size = count( $items );
    for( $i = 1; $i <= $size-1; $i++ ) {
         for( $j = 1; $j <= $size - 1 - $i; $j++ ) {
              if( $items[$j+1] < $items[$j] ) {
                   $temp = $items[$j];
                   $items[$j] = $items[$j+1];
                   $items[$j+1] = $temp;
              }
         }
    }
}

$items = array(31, 41, 59, 26, 41, 58);
BubbleSort( $items );
?>

 

반응형

'PHP∵SCRIPT' 카테고리의 다른 글

PHP에서 특수문자 없애는 정규표현식  (0) 2014.03.25
비교연산과 조건문...  (0) 2014.03.25
반복실행문  (0) 2014.03.25
PHP 난수를 이용한 쿠폰번호 생성하기  (0) 2014.03.23
리눅스 ftp 명령어 모음  (0) 2014.03.23
리눅스 특정 문자열 찾기  (0) 2014.03.23
유용한 함수 모음  (0) 2014.03.23
php 자주쓰이는 함수  (0) 2014.03.23

댓글


Copyright ⓒ SmartWeb All rights reserved.