黑馬程式設計師 內外層迴圈以及氣泡排序法

2021-06-09 23:53:20 字數 1631 閱讀 8387

---------------------- windows phone 7手機開發、.net培訓、期待與您交流! ----------------------

內外層迴圈以及氣泡排序法是對迴圈語法的深入和延伸,對初學者來說還是比較難理解的。

在學習之前,最好先對成員變數區域性變數有乙個比較深刻的了解。

c#中時沒有全域性變數的。

只有定義在類中的成員變數。

區域性變數是指在程式中,只在特定過程或函式中可以訪問的變數,其作用域

只是本函式函式,即區域性變數的作用域從宣告處到該函式的結束。

比如在**段

inta, b, c;

for(int i = 100; i < 1000; i++)

} console.readkey();

中, i則是區域性變數,只能在for迴圈中被使用,一旦for執行完畢,i的生命週期也就結束了。

注:1.

當成員變數與區域性變數重名的時候,起作用的是區域性變數,成員變數被遮蔽掉。

2.千萬不要讓區域性變數重名!

內外層迴圈是對for迴圈的延伸,一般是對每乙個元素都需要進行某種迴圈操作,這時外層迴圈保證每個元素都會被取到,記憶體迴圈控制需要做的迴圈操作,

代表程式有九九乘法表:

for(int i = 1; i < 10; i++)//

迴圈取出1-9作每行的第乙個乘數

*=\t", i, j, i * j);//

這一行的行數與第二個乘數的乘法表示式

} console.writeline();

氣泡排序 是一種基礎的也是目前常用的排序方法。

缺點:效率比較低;

兩個優點:1.程式設計複雜度很低,很容易寫出**;2.具有穩定性,這裡的穩定性是指原序列中相同元素的相對順序仍然保持到排序後的序列,而堆排序、快速排序均不具有穩定性。

氣泡排序的基本思路是:依次比較相鄰的兩個數,將小數放在前面,大數放在後面。即在第一趟:首先比較第1個和第2個數,將小數放前,大數放後。然後比較第2個數和第3個數,將小數放前,大數放後,如此繼續,直至比較最後兩個數,將小數放前,大數放後。至此第一趟結束,將最大的數放到了最後。在第二趟:仍從第一對數開始比較(因為可能由於第2個數和第3個數的交換,使得第1個數不再小於第2個數),將小數放前,大數放後,一直比較到倒數第二個數(倒數第一的位置上已經是最大的),第二趟結束,在倒數第二的位置上得到乙個新的最大數(其實在整個數列中是第二大的數)。如此下去,重複以上過程,直至最終完成排序。

由於在排序過程中總是小數往前放,大數往後放,相當於氣泡往上公升,所以稱作氣泡排序。

用二重迴圈

實現,外迴圈變數設為i,內迴圈變數設為j。假如有10個數需要進行排序,則外迴圈重複9次,內迴圈依次重複9,8,...,1次。每次進行比較的兩個元素都是與內迴圈j有關的,它們可以分別用a[j]和a[j+1]標識,i的值依次為1,2,...,9,對於每乙個i,j的值依次為1,2,...10-i。

氣泡排序的基本構架是

for(int i = 0; i <

陣列名.length - 1; i++)

}建議把這個結構牢牢記住!

---------------------- windows phone 7手機開發、.net培訓、期待與您交流! ----------------------

黑馬程式設計師 氣泡排序

氣泡排序 氣泡排序 bubble sort 是一種電腦科學領域的較簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。一 演算法原理 氣泡排序演算法的運作如下 1 比較相鄰的元素...

黑馬程式設計師 迴圈結構

asp.net unity開發 net培訓 期待與您交流!迴圈結構 1 while while迴圈的基本語法 while 表示式1 語句2 執行過程 1 對表示式1進行求值 2 如果表示式1的值為false,則跳轉到第4步,如果表示式1的值為true,則跳轉到第3步 3 執行迴圈體,然後跳轉到第1步...

黑馬程式設計師 陣列 氣泡排序

asp.net unity開發 net培訓 期待與您交流!陣列特點 1 可以幫我們一次宣告多個同型別的變數 2 這些變數在記憶體中是連續儲存的 語法 資料型別 陣列名稱 new 資料型別 陣列長度 舉例 int age new int 5 宣告了乙個長度為5的陣列,陣列叫age 通俗點說 就是宣告了...