極客時間 排序 快速排序

2021-10-06 10:22:03 字數 667 閱讀 9010

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...