1.內(nèi)排序之插入法排序
類似于打撲克牌時(shí),一邊抓牌,一邊整理牌的過程:
每抓一張牌就把它插入到適當(dāng)?shù)奈恢茫?/p>
牌抓完了,也整理完了。
---這種策略被稱為插入排序
示例
插入排序代碼和原理
2.內(nèi)排序之簡(jiǎn)單選擇法排序
首先在所有數(shù)組元素中找出最小值的元素,放在A[1]中;
接著在不包含A[1]的余下的數(shù)組元素中在找出最小值的元素,放置在A[2]中;
如此下去,一直到最后一個(gè)元素。
------這一排序策略被稱為簡(jiǎn)單選擇排序
簡(jiǎn)單選擇排序代碼和原理
3.內(nèi)排序之冒泡排序
一個(gè)輪次一個(gè)輪次的處理。
在每一個(gè)輪次中依次對(duì)待排序數(shù)組元素中相鄰的兩個(gè)元素進(jìn)行比較,將大的放前,小的放后--遞減排序(或者是講小的放前,大的放后---遞增排序)
當(dāng)沒有交換時(shí),則數(shù)據(jù)已被排好序
冒泡排序代碼和原理
4.內(nèi)排序之快速排序
從待排序列中任取一個(gè)元素(例如取第一個(gè))作為中心,所有比它小的元素放在左側(cè),所有比它大的元素放在右側(cè),形成左右兩個(gè)子序列;
然后再對(duì)各子序列重新選擇中心元素并依此規(guī)則調(diào)整,直到每個(gè)子序列的元素只剩一個(gè),此時(shí)便為有序序列了。
5.外排序之多路歸并排序
前提:待排序的數(shù)據(jù)保存在磁盤上,不能一次性裝入內(nèi)存,即排序者不能一次完整地看到和操縱所有數(shù)據(jù),需要將數(shù)據(jù)分批次裝入內(nèi)存分批處理的排序問題;
1.分成若干個(gè)子集合(子集合的數(shù)量根據(jù)內(nèi)存定),并排好序
排序好子集合
歸并排序--過程模擬
歸并排序--算法描述
6.PageRank網(wǎng)頁排序算法
網(wǎng)頁重要度問題抽象
計(jì)算網(wǎng)頁重要度
數(shù)學(xué)建模-示例
數(shù)學(xué)建模-鄰接矩陣
數(shù)學(xué)建模-轉(zhuǎn)移概率
矩陣乘法與反向鏈接的加權(quán)和
最后結(jié)果