數據結構-概論


判斷題

1.用漸進表示法分析算法復雜度的增長趨勢。

     T      F

2.N2/1000是O(N)的。

     T      F

3.將長度分別為m,n的兩個單鏈表合並為一個單鏈表的時間復雜度為O(m+n)。

     T      F

4.對於某些算法,隨着問題規模的擴大,所花的時間不一定單調增加。

     T      F

5.用漸進表示法分析算法復雜度的增長趨勢。

     T      F

6.N2logN和NlogN2具有相同的增長速度。

     T      F

7.(logN)2O(N)的。

     T      F

8.算法分析的兩個主要方面是時間復雜度和空間復雜度的分析。

     T      F

選擇題

1.下列函數中,哪兩個函數具有相同的增長速度:

     A.2 N和N N
     B.N和2/N
     C.N 2logN和NlogN 2
     D.NlogN 2和NlogN

2.在數據結構中,從邏輯上可以把數據結構分成( )。

     A.動態結構和靜態結構
     B.緊湊結構和非緊湊結構
     C.線性結構和非線性結構
     D.內部結構和外部結構

3.與數據元素本身的形式、內容、相對位置、個數無關的是數據的( )。

     A.存儲結構
     B.存儲實現
     C.邏輯結構
     D.運算實現

4.通常要求同一邏輯結構中的所有數據元素具有相同的特性,這意味着( )。

     A.數據在同一范圍內取值
     B.不僅數據元素所包含的數據項的個數要相同,而且對應數據項的類型要一致
     C.每個數據元素都一樣
     D.數據元素所包含的數據項的個數要相等

5.給定N×N的二維數組A,則在不改變數組的前提下,查找最大元素的時間復雜度是:

     A.O(N 2)
     B.O(NlogN)
     C.O(N)
     D.O(N 2logN)

6.下列代碼

for(i=0; i<n; i++)
  for(j=i; j>0; j/=2)
     printf(“%d\n”, j);

的時間復雜度是:

     A.O(N×i)
     B.O(N)
     C.O(N 2)
     D.O(NlogN)

7.斐波那契數列FN的定義為:F0=0, F1=1, FN=FN−1+FN−2, N=2, 3, …。用遞歸函數計算FN的時間復雜度是:

     A.O(logN)
     B.O(N)
     C.O(N!)
     D.O(F N)

8.對於順序存儲的長度為N的線性表,訪問結點和增加結點的時間復雜度為:

     A.O(1), O(1)
     B.O(1), O(N)
     C.O(N), O(1)
     D.O(N), O(N)

9.下列代碼

if ( A > B ) {
    for ( i=0; i<N*N/100; i++ )
        for ( j=N*N; j>i; j-- )
            A += B;
}
else {
    for ( i=0; i<N*2; i++ )
        for ( j=N*3; j>i; j-- )
            A += B;
}

的時間復雜度是:

     A.O(N 3)
     B.O(N 4)
     C.O(N 5)
     D.O(N 6)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM