《JAVA軟件結構與數據結構》第一週學習總結

學號 20172326 《JAVA軟件結構與數據結構》第一週學習總結

教材學習內容總結

  • 軟件質量的幾大特性
  • 增加函數與大O記法
  • 大O記法用來表示表示增加函數,從而來表示算法的複雜度
  • 算法的運行效率相當重要,一個複雜的算法即便再高的處理器也於事無補
  • 不一樣的嵌套或循環下狀況下,算法複雜度的計算方法

教材學習中的問題和解決過程

  • 可靠性與健壯性的關係
  • 可靠性關注的是軟件系統發生故障的頻率以及在什麼環境下發生故障,而健壯性關注的是軟件系統出現故障時會發生什麼。java

    教材習題

    問題一:下列增加函數的階次是多少?

  • 問題(1):10n^2+100n+1000
  • 解:n^2
  • 問題(2):10n^3-7
  • 解:n^3
  • 問題(3):2^n+100n^3
  • 解:2^n
  • 問題(4):n^2 ·log(n)
  • 解:n^2 ·log(n)算法

    問題二:請肯定下面代碼段的增加函數和階次

for(int count = 0 ; count < n ; count++)
    for(int count2 = 0 ; count2 < n ; count2 = count2 + 2)
        {
            System.out.println(count,count2);
        }
  • 由題可知,該代碼的增加函數爲(n/2 - 1)*n,因此階次爲n²數據結構

    問題三:請肯定下面代碼段的增加函數和階次

for(int count = 0 ; count < n ; count++)
    for(int count2 = 1 ; count2 < n ; count2 = count2 * 2)
        {
            System.out.println(count,count2);
        }
  • 外層循環n次,內層循環log n 次,因此階次爲nlogn,增加函數爲nlogn-1

其餘(感悟、思考)

  • 好好學習,每天向上

學習進度條

代碼行數(新增/累積) 博客量(新增/累積) 學習時間(新增/累積) 重要成長
目標 5000行 30篇 400小時
第一週 0/0 1/1 3/3

參考資料

相關文章
相關標籤/搜索