09/05/2018, 18:12

Giải thuật sắp xếp nhanh (Quick Sort) trong PHP

Bài tập: Sử dụng giải thuật sắp xếp nhanh (Quick Sort) để sắp xếp các phần tử. Bạn cũng có thể tìm hiểu về thuật toán này trong bài: PHP script Dưới đây là phần PHP code để giải bài tập PHP trên: <html> <head> <title></title> ...

Bài tập: Sử dụng giải thuật sắp xếp nhanh (Quick Sort) để sắp xếp các phần tử.

Bạn cũng có thể tìm hiểu về thuật toán này trong bài:

PHP script

Dưới đây là phần PHP code để giải bài tập PHP trên:

<html>
   
   <head>
      <title></title>
   </head>
   <body>
   
       <?php
        function quick_sort($my_array)  
		{  
			$loe = $gt = array();  
			if(count($my_array) < 2)  
			{  
				return $my_array;  
			}  
			$pivot_key = key($my_array);  
			$pivot = array_shift($my_array);  
			foreach($my_array as $val)  
			{  
				if($val <= $pivot)  
				{  
					$loe[] = $val;  
				} elseif ($val > $pivot)  
				{  
					$gt[] = $val;  
				}  
			}  
			return array_merge(quick_sort($loe),array($pivot_key=>$pivot),quick_sort($gt));  
		}  
		   
		$my_array = array(3, 0, 2, 5, -1, 4, 1);  
		echo 'Mảng ban đầu: '.implode(',',$my_array).'<br>';  
		$my_array = quick_sort($my_array);  
		echo 'Mảng sau khi được sắp xếp: '.implode(',',$my_array);
       ?>
       
   </body>
</html>

Kết quả

Lưu PHP code trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php sẽ cho kết quả:

 | Bài tập PHP có giải

Các giải thuật sắp xếp trong PHP khác có trên Zaidap:

Follow fanpage của team hoặc facebook cá nhân Nguyễn Thanh Tuyền để tiếp tục theo dõi các loạt bài mới nhất về Ngữ pháp tiếng Anh, luyện thi TOEIC, PHP, Java, C, C++, Javascript, HTML, Python, Database, Mobile ... mới nhất của chúng tôi.

0