public class fastsort
int index=findindex(a,left,right);
mergesort(a, left,index-1);//分解
mergesort(a, index+1,right);//分解 }
/*1.取最後乙個元素值為k,從左到右找出乙個大於k的值ki,從右到左開始遍歷,找出乙個小於k的值kj
*2.若此時i=j,那麼此時j所指向的值小於k,i指向的值大於k,交換k和aj的值,並返回j的位置,也就是index的位置,index的位置就是它該在的位置
*/ public int findindex(integer a, int left, int right) else }/*
* 從右到左,找出乙個小於priod的數
*/for (int k = j; k >= left; k--) else
}if (i < j) else
} }public static void main(string args) ;
fastsort mergesort=new fastsort();
mergesort.mergesort(a, 0,a.length-1);
for(integer c:a)
}}
極客時間 排序 計數排序
計數排序只能用在資料範圍不大的場景中,如果資料範圍 k 比要排序的資料 n 大很多,就不適合用計數排序了。而且,計數排序只能給非負整數排序,如果要排序的資料是其他型別的,要將其在不改變相對大小的情況下,轉化為非負整數。比如,還是拿考生這個例子。如果考生成績精確到小數後一位,我們就需要將所有的分數都先...
極客時間 演算法
1.合格程式設計師的第一步 演算法和資料結構 2.如何事半功倍的學習演算法和資料結構 1 怎樣去學習精通乙個領域?a.chunk it up 切碎知識點 同事注意各個知識點的聯絡,輔助記憶 b.deliberate practicing 刻意練習 c.feedback 和別人的做飯比較,高手指點 2...
mysql索引(極客時間)
innodb中使用了b 樹資料結構,每乙個索引在innodb都對應一顆b 樹。b 樹的特點是能夠保持資料穩定有序,其插入與修改擁有較穩定的對數時間複雜度。b 樹元素自底向上插入,這與二叉樹恰好相反。具體的定以與性質可以在其他文章檢視到。現在有一張表 mysql create table t id i...