當前位置:編程學習大全網 - 遊戲軟體 - 排序方法有哪幾種

排序方法有哪幾種

排序方法有:

壹、直接插入排序

原理:從待排序的數中選出壹個來,插入到前面的合適位置。

二、選擇排序

與直接插入排序正好相反,選擇排序是從待排序的數中選出最小的放在已經排好的後面,這個算法選數耗時。

三、快速排序

快速排序簡稱快排,是壹種比較快的排序,適合基本無序的數據,為什麽這麽說呢?下面我說下快排的思路:設置兩個指針:i和j,分別指向第壹個和最後壹個,i像後移動,j向前移動,選第壹個數為標準(壹般這樣做,當然快排的關鍵就是這個“標準”的選取),從後面開始。

找到第壹個比標準小的數,互換位置,然後再從前面,找到第壹個比標準大的數,互換位置,第壹趟的結果就是標準左邊的都小於標準,右邊的都大於標準(但不壹定有序),分成兩撥後,繼續遞歸的使用上述方法,最終有序!

四、冒泡排序

冒泡排序是壹種很簡單,不論是理解還是時間起來都比較容易的壹種排序算法,思路簡單:小的數壹點壹點向前起泡,最終有序。

五、歸並排序

歸並排序是建立在歸並操作上的壹種有效的排序算法。該算法是采用分治法(Divide and Conquer)的壹個非常典型的應用。

首先考慮下如何將將二個有序數列合並。這個非常簡單,只要從比較二個數列的第壹個數,誰小就先取誰,取了後就在對應數列中刪除這個數。然後再進行比較,如果有數列為空,那直接將另壹個數列的數據依次取出即可。

  • 上一篇:什麽軟件可以給寶寶起名,給孩子起名字用的工具書有哪些
  • 下一篇:什麽是辦公隔斷?辦公室如何做出漂亮的玻璃高隔間?
  • copyright 2024編程學習大全網