對長度為10的線性表進行氣泡排序,最壞情況下需要比較的次數為

時間 2021-07-12 17:38:29

1樓:匿名使用者

9x8x7x6x5x4x3x2x1=362880

氣泡排序演算法不算優化,但是易於理解。排在第一位的數依次和排在後面的數比較,如果後者較大,則兩個數交換位置,(這樣,在比較過的數裡,位於第一的數總是最大的)。如果是10個數,那第一輪要比9次,即位於第1的數和位於第2、3、4、5、6、7、8、9、10位的數比。

第一輪結束後,最大的數排在了第一位。然後拿位於第二位的數和後面的數比較。如果是10個數排序,第二輪要比8次。

依此類推。長度為10的線性表要比較362880次。

題目本身有不準確的地方,氣泡排序無所謂“最壞”或“最好”的情況,都要比較那麼多次。

2樓:

最壞情況下氣泡排序需要比較的次數為n(n-1)/2=10(10-1)/2=45

3樓:寧靜致遠清

冒泡法是在掃描過程中逐次比較相鄰兩個元素的大小,最壞的情

況是每次比較都要將相鄰的兩個元素互換,需要互換的次數為

9+8+7+6+5+4+3+2+1=45,選45。

4樓:玄月青空

氣泡排序最壞的情況下需要10次;可以根據公式n(n-1)/2得出

5樓:匿名使用者

不應該是乘法,而是加法:9+8+7+6+5+4+3+2+1=45

6樓:匿名使用者

話說這個正確的答案應該是45吧

n(n-1)/2

對長度為10的線性表進行氣泡排序,最壞情況下需要比較的次數為多少?

7樓:叔雪莊鵑

45對長度n為10的線性表進行氣泡排序,最壞情況下需要比較的次數為n(n-1)/2=5×9=45

長度為10的線性表進行氣泡排序,比較次數怎麼算

8樓:萌孩紙萌萌笑

9x8x7x6x5x4x3x2x1=362880

氣泡排序演算法不算優化,但是易於理解。排在第一位的數依次和排在後面的數比較,如果後者較大,則兩個數交換位置,(這樣,在比較過的數裡,位於第一的數總是最大的)。如果是10個數,那第一輪要比9次,即位於第1的數和位於第2、3、4、5、6、7、8、9、10位的數比。

第一輪結束後,最大的數排在了第一位。然後拿位於第二位的數和後面的數比較。如果是10個數排序,第二輪要比8次。

依此類推。長度為10的線性表要比較362880次。

c++的問題:對長度為n的線性表進行氣泡排序,最壞情況需要比較的次數為()

9樓:迷戀_哈哈

n-1 +n-2+n-3 +....+1+0

對長度為n的線性表進行順序查詢,在最壞的情況下所需要的比較次數為n還是log2n啊?

10樓:小議百科雜談

是n。解題思路:最糟糕的情況應該是比較到線性表最後一個值,也沒有查詢到所需要的值,那麼從線性表的第0個值開始比較,每次取出一個值比較,不符合,再取下一個值,依次比較,一直到最後一個,那麼長度為n,就需要比較n次。

對長度為n的線性表進行順序查詢,在最壞情況下所需要的比較次數為n,平均比較次數為n/2、對長度為n的線性表進行二分法查詢,在最壞情況下所需要的比較次數為logan。

11樓:

10個人,有一個小偷藏在裡面。現在從第一個開始找,明確告訴你一個個找而且小偷站在在最後一個位置上,你說用10次找到還是log210次找到啊。。

12樓:匿名使用者

順序查詢最壞情況當然是n了。。

二分查詢才是log2n

13樓:匿名使用者

順序查詢最壞情況是n

(1)假設線性表的長度為n,則在最壞情況下,氣泡排序需要的比較次數為

14樓:匿名使用者

氣泡排序法是一種bai最簡du單的交換類排序方法,它zhi是通過相鄰資料元素

dao的交換逐步將線性表

專變成有序。

假設屬線性表的長度為n,則在最壞的情況下,氣泡排序需要經過n/2遍的從前往後的掃描和n/2遍的從後往前的掃描,需要的比較次數為n(n-1)/2

15樓:匿名使用者

非專業解答 選a

對長度為n的線性表進行順序查詢,在最壞情況下所需要的比較次數為____。

16樓:

最糟糕的情況應該是比較到線性表最後一個值,也沒有查詢到所需要的值,那麼從線性表的第0個值開始比較,每次取出一個值比較,不符合,再取下一個值,依次比較,一直到最後一個,那麼長度為n,就需要比較n次。

17樓:匿名使用者

在查詢不成功時,與關鍵字比較次數為:n!!!!

線性表的操作

1.分解第二個線性表,按照大小進行插入操作2.先不管大小接合再排序 當然如果單連結串列的形式是建議插入的,因為排序的操作比插入多的多可以設一臨時變數p指向2線性表的尾端 逐個插入1號表,注意判斷插入的位置是否頭尾,需要做特殊處理 linkedlistlist1 new linkedlist link...

線性表和順序表的區別,C語言中的線性表 順序表和連結串列到底是什麼關係?

線性表是鏈式儲存結構,用連結串列實現,使用空間多,且合理。而順序表基本上是用陣列實現的,使用空間有限,會造成浪費。 順序表 靜態分配。程式執行之前必須明確規定儲存規模。隨機存取結構,主要是進行查詢,很少做插入和刪除操作時順序表。線性表 動態分配。只要記憶體空間尚有空閒,就不會產生溢位。從頭指標起順著...

線性表中的元素為正整數或負整數,要求正負分開

補充下一樓的,演算法1.i 指向線性表頭,j指向線性表尾,a為線性表2.如果a i 0 a j 0 swap a i a j 如果a j 0 j 如果a i 0 i 3.如果i j 跳出迴圈 否則執行2void swap int a,int b include int main void if a ...