排序 排序的算法很多.課本主要介紹里兩種排序方法:直接插入排序和冒泡排序 (1)直接插入排序 在日常生活中.經常碰到這樣一類排序問題:把新的數據插入到已經排好順序的數據列中. 例如:一組從小到大排好順序的數據列{1.3.5.7.9.11.13}.通常稱之為有序列.我們用序號1.2.3.--表示數據的位置.欲把一個新的數據8插入到上述序列中. 完成這個工作要考慮兩個問題: (1)確定數據“8 在原有序列中應該占有的位置序號.數據“8 所處的位置應滿足小于或等于原有序列右邊所有的數據.大于其左邊位置上所有的數據. (2)將這個位置空出來.將數據“8 插進去. 對于一列無序的數據列.例如:{49.38.65.97.76.13.27.49}.如何使用這種方法進行排序呢?基本思想很簡單.即反復使用上述方法排序.由序列的長度不斷增加.一直到完成整個無序列就有序了 首先.{49}是有序列.我們將38插入到有序列{49}中.得到兩個數據的有序列: {38.49}. 然后.將第三個數據65插入到上述序列中.得到有序列: {38.49.65} ---- 按照這種方法.直到將最后一個數據65插入到上述有序列中.得到 {13.27.38.49.49.65.76.97} 這樣.就完成了整個數據列的排序工作.注意到無序列“插入排序算法 成為了解決這類問題的平臺 (2)冒泡法排序 所謂冒泡法排序.形象地說.就是將一組數據按照從小到大的順序排列時.小的數據視為質量輕的.大的數據視為質量沉的.一個小的數據就好比水中的氣泡.往上移動.一個較大的數據就好比石頭.往下移動.顯然最終會沉到水底.最輕的會浮到頂.反復進行.直到數據列排成為有序列.以上過程反映了這種排序方法的基本思路. 我們先對一組數據進行分析. 設待排序的數據為:{49.38.65.97.76.13.27.49} 排序的具體操作步驟如下: 【
查看更多】
題目列表(包括答案和解析)