目錄
PHP实现冒泡排序,php冒泡排序
首頁 php教程 php手册 PHP实现冒泡排序,php冒泡排序

PHP实现冒泡排序,php冒泡排序

Jun 13, 2016 am 08:38 AM
冒泡排序

PHP实现冒泡排序,php冒泡排序

1、首先我们必须弄清楚什么是冒泡排序,不理解冒泡排序的原理,我们就无法写出代码。

冒泡排序(BubbleSort)的基本概念是:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。至此第一趟结束,将最大的数放到了最后。在第二趟:仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再小于第2个数),将小数放前,大数放后,一直比较到倒数第二个数(倒数第一的位置上已经是最大的),第二趟结束,在倒数第二的位置上得到一个新的最大数(其实在整个数列中是第二大的数)。如此下去,重复以上过程,直至最终完成排序。

PHP实现代码:

<?<span>php
    
    </span><span>//</span><span>冒泡排序方法</span>

    <span>function</span> bubblesort(&<span>$arr</span><span>){
            </span><span>//</span><span>定义一个变量保存交换的值</span>
        <span>$temp</span> =0<span>;
        </span><span>for</span>(<span>$i</span>=0;<span>$i</span><<span>count</span>(<span>$arr</span>);<span>$i</span>++<span>){
            
            </span><span>for</span>(<span>$j</span>=0;<span>$j</span><<span>count</span>(<span>$arr</span>)-<span>$i</span>-1;<span>$j</span>++<span>){
                        
                </span><span>if</span>(<span>$arr</span>[<span>$j</span>]><span>$arr</span>[<span>$j</span>+1<span>]){
                    </span><span>//</span><span>如果前面的那个数大于后面的那个数,那么他们就进行交换</span>
                    <span>$temp</span>=<span>$arr</span>[<span>$j</span><span>];
                    </span><span>$arr</span>[<span>$j</span>]=<span>$arr</span>[<span>$j</span>+1<span>];
                    </span><span>$arr</span>[<span>$j</span>+1]=<span>$temp</span><span>;
                }
            }            
        }
    }

    </span><span>$arr</span>=<span>array</span>(100,99,200,5,-4,6,-7<span>);
    bubbleSort(</span><span>$arr</span><span>);
    </span><span>print_r</span>(<span>$arr</span>);   <span>//</span><span>数组是值传递,所以传递的时候加个&符号就是地址传递,改变外部变量</span>


?>
登入後複製

 

 

 

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章

倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章

倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章標籤

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

用 C++ 函數指標改造程式碼:提升效率和可重複使用性 用 C++ 函數指標改造程式碼:提升效率和可重複使用性 Apr 29, 2024 pm 06:45 PM

用 C++ 函數指標改造程式碼:提升效率和可重複使用性

如何實作C#中的冒泡排序演算法 如何實作C#中的冒泡排序演算法 Sep 19, 2023 am 11:10 AM

如何實作C#中的冒泡排序演算法

C++ 函數效能最佳化中的演算法選擇與最佳化技巧 C++ 函數效能最佳化中的演算法選擇與最佳化技巧 Apr 23, 2024 pm 06:18 PM

C++ 函數效能最佳化中的演算法選擇與最佳化技巧

PHP 數組自訂排序演算法的編寫指南 PHP 數組自訂排序演算法的編寫指南 Apr 27, 2024 pm 06:12 PM

PHP 數組自訂排序演算法的編寫指南

Java資料結構與演算法:深入詳解 Java資料結構與演算法:深入詳解 May 08, 2024 pm 10:12 PM

Java資料結構與演算法:深入詳解

各種 PHP 數組排序演算法的複雜度分析 各種 PHP 數組排序演算法的複雜度分析 Apr 27, 2024 am 09:03 AM

各種 PHP 數組排序演算法的複雜度分析

冒泡事件的涵義是什麼 冒泡事件的涵義是什麼 Feb 19, 2024 am 11:53 AM

冒泡事件的涵義是什麼

Java資料結構與演算法:雲端運算實戰指南 Java資料結構與演算法:雲端運算實戰指南 May 09, 2024 am 08:12 AM

Java資料結構與演算法:雲端運算實戰指南

See all articles