C#
泡沫排序法
常使用在資料量大的[資料庫管理系統]中,先需要先使用排序方法將整理資料,
當要存取某一筆資料時,再使用不同搜尋方法來找尋。排序最主要的目的就是為了快速查詢而且有效率。
在重複地走訪過要排序的數列,將順序排列至整齊
使用時機:在資料零亂的時候初始重新排序資料
應用:當資料龐大的時候程式初始化後在用演算二分法可以加速找尋出想要的資料
例:程式開啟時資料庫資料先做程式初始化將9, 4, 4, 6, 3, 1, 2, 5, 3, 6, 4, 7, 8, 9排序成
12334445667899當在次找尋資料時用二分法找尋8過程會為先切半找5在切半找7在切半就可以找到8, 迴圈從跑14次降成3次速度提升了4.6倍
private void button4_Click(object sender, EventArgs e)
{
int temp = 0;
int[] intArray = { 9, 4, 4, 6, 3, 1, 2, 5, 3, 6, 4, 7, 8, 9 };
//從小排到大
for (int i = 0; i < intArray.Length; i++)
{
for (int j = i - 1; j >= 0; j--)
{
if (intArray[j + 1] < intArray[j])
{
temp = intArray[j + 1];
intArray[j + 1] = intArray[j];
intArray[j] = temp;
}
}
}
//從大排到小
for (int i = 0; i < intArray.Length; i++)
{
for (int j = i - 1; j >= 0; j--)
{
if (intArray[j + 1] > intArray[j])
{
temp = intArray[j + 1];
intArray[j + 1] = intArray[j];
intArray[j] = temp;
}
}
}
}
留言列表