1. 程式人生 > 其它 >2021-2022 20211417《資訊保安專業導論》第六週學習總結

2021-2022 20211417《資訊保安專業導論》第六週學習總結

2021-2022 20211417《資訊保安專業導論》第六週學習總結

作業資訊

這個作業屬於哪個課程 <班級的連結>(如2020-2021-1資訊保安專業導論
這個作業要求在哪裡 <作業要求的連結>(如2020-2021-1資訊保安專業導論第六週作業)
這個作業的目標 Polya如何解決問題,簡單型別與組合型別,複合資料結構,查詢與排序演算法,演算法複雜度,遞迴,程式碼安全
作業正文 2021-2022 20211417《資訊保安專業導論》第六週學習總結

教材學習內容總結

教材《電腦科學概論》第七章

  • 7.1如何解決問題
    • 7.1.1提出問題(引入背景)
    • 7.1.2尋找熟悉的情況(永遠不要徹底重新做一件事)
    • 7.1.3分治法(一個大問題劃分為幾個小單元)
    • 7.1.4演算法(解決方案)
    • 7.1.5計算機問題求解過程(分析和說明,演算法開發,實現,維護四個階段)
    • 7.1.6方法總結(分析問題,列出主要任務,編寫其餘模組,根據需要進行重組和改寫)
    • 7.1.7測試演算法(需要在開發過程的更早階段執行測試)
  • 7.2有簡單變數的演算法
    • 7.2.1帶有選擇的演算法(if,else if等)
    • 7.2.2帶有迴圈的演算法(while,count<limit,巢狀結構等)
  • 7.3複雜變數
    • 7.3.1陣列(同構專案的有名集合,與之有關的演算法:搜尋,排序,處理)
    • 7.3.2記錄(異構專案的有關集合,集合可以包含整數,實數,字串或其他型別的資料)
  • 7.4搜尋演算法
    • 7.4.1順序搜尋(布林操作符AND,OR,NOT)
    • 7.4.2有序陣列中的順序搜尋(length,有序陣列和無序陣列)
    • 7.4.3二分檢索(通過比較排除大部分檢索範圍,即切半選範圍)
  • 7.5排序
    • 7.5.1選擇排序(簡單,但是浪費空間)
    • 7.5.2氣泡排序(效率低,但稍加修改也有部分優勢)
    • 7.5.3插入排序(一個元素將被放在相對於其他元素來說適當的位置)
  • 7.6遞迴演算法
    • 7.6.1子程式語句(兩種形式:1執行任務,2執行任務+返回給呼叫單元一個值)
    • 7.6.2遞迴階乘(!,每次呼叫Factorial時N都會減小)
    • 7.6.3遞迴二分檢索(對第一次和最後一次用新值再次呼叫演算法)
    • 7.6.4快速排序(‘分治法’)
  • 7.7幾個重要思想
    • 7.7.1資訊隱蔽(隱蔽模組的細節以控制對對這些細節的訪問的做法)
    • 7.7.2抽象(複雜系統的一種模型,只包括對觀察者來說必須的細節)
    • 7.7.3事物命名
    • 7.7.4測試

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

(一個模板:我看了這一段文字 (引用文字),有這個問題 (提出問題)。 我查了資料,有這些說法(引用說法),根據我的實踐,我得到這些經驗(描述自己的經驗)。 但是我還是不太懂,我的困惑是(說明困惑)。【或者】我反對作者的觀點(提出作者的觀點,自己的觀點,以及理由)。 )

  • 問題1:對於氣泡排序,我看了之後不是很理解

  • 問題1解決方案:我上網查了一下資料,理解了這種排序方式

程式碼除錯中的問題和解決過程

  • 問題1:在第七章中‘長字串’中的詩不知道怎麼在code中打出來
  • 問題1解決方案:自己嘗試了幾回,在觀察一下圖片,發現後面也有""",補上之後就解決了

  • 問題2:第七章‘動動手’中wordlist執行不了

  • 問題2解決方案:嘗試了一下在python shell裡面弄,但還是不行

    經過七八次檢視,發現我把worldlist打成wordstring,而且還多了個#

    改過來之後成功解決

程式碼託管

第六章程式碼執行截圖



第七章程式碼執行截圖

上週考試錯題總結

錯題1:What is a regular OR gate also known as?
答案應該是Inclusive OR

錯題2:The following equation is an example of which Boolean algebra property?
答案應該是Associative

錯題3:Which of the following means that each memory location can be accessed directly?
答案應該是Random access

錯題4:Which of the following is a computing technique in which multiple processors each contribute one part of an overall computation?
答案應該是Task-level parallelism

錯題5:A computer's front-side bus(FSB) is small,fast memory that is usually built into the processor chip.
答案應該是錯誤

錯題6:The program counter is a register that stores the number of instructions executed by a computer.
答案應該是錯誤

學習進度條

程式碼行數(新增/累積) 部落格量(新增/累積) 學習時間(新增/累積) 重要成長
目標 5000行 30篇 400小時
第一週 200/200 2/2 20/20
第二週 300/500 2/4 18/38
第三週 500/1000 3/7 22/60
第四周 300/1300 2/9 30/90

嘗試一下記錄「計劃學習時間」和「實際學習時間」,到期末看看能不能改進自己的計劃能力。這個工作學習中很重要,也很有用。
耗時估計的公式
:Y=X+X/N ,Y=X-X/N,訓練次數多了,X、Y就接近了。

參考:軟體工程軟體的估計為什麼這麼難軟體工程 估計方法

  • 計劃學習時間:20小時

  • 實際學習時間:20小時

  • 改進情況:

(有空多看看現代軟體工程 課件
軟體工程師能力自我評價表
)

參考資料