1. 程式人生 > 其它 >2019-2020-1學期 20212405 《網路空間安全專業導論》 第四周學習總結

2019-2020-1學期 20212405 《網路空間安全專業導論》 第四周學習總結

第八章 抽象資料型別與子程式
1.抽象資料型別:屬性明確地與特定實現分離的容器
資料結構:一種抽象資料型別中的複合資料域的實現
容器:存放和操作其他物件的物件
棧:體現LIFO操作,後進先出
佇列:體現FIFO操作,先進先出
列表:專案是同構的,專案是線性的,列表是變長的。
列表可以被形象化為鏈式結構——鏈式結構:一個將資料項和找到下一項位置的資訊儲存到同一容器的實現方法
分有無序列表和有序列表
樹:列表,棧和佇列這樣的抽象結構本質上都是線性的,只模擬了一種資料關係。樹是一種分層體系結構
二叉樹:是一種抽象結構,其中每一個節點可以有兩個後繼節點,叫作子女。以此類推。。。
樹的頭部是一個起始節點,叫作根,它不是任何節點的子女。,如果一個節點左邊的子節點存在,則這個子節點叫作左子女。如果一個節點沒有子女,則這個節點叫作樹葉,也稱為葉節點。
除了根節點外,每個節點都只有一個父母節點。高一級或多級的成為先輩,根節點是樹中其他所有節點的先輩
二叉檢索樹:任何節點的值都要大於它的左子樹中的所有節點的值,並且要小於它的右子樹中的所有節點的值
搜尋方式類似於二分檢索
輸出二叉檢索樹中的資料:要輸出根的值,必須先輸出它的左子樹中的所有值,還必須輸入它的右子樹中的所有值,即左-根-左-根...右-根-右-根...右。
圖:由一組節點和一組把節點相互連線起來的邊構成的資料結構
頂點:圖中的節點
邊(弧):表示圖中兩個節點的連線的頂點對
無向圖:其中的邊沒有方向的圖 如城市之間雙向的公路
有向圖:其中的邊是從一個頂點指向另一個頂點(或同一個頂點的圖)
如果兩個頂點有一條邊相連,則把他們稱為鄰頂點
兩個頂點通過一條有順序的路徑相連
路徑:連線圖中兩個頂點的一系列頂點
深度優先搜尋:用棧來儲存操作——放入兩個或多個起始點,實行後進先出原則,以其中一個起始點為開始延伸它的相鄰點,其餘起始點暫不考慮。即子女關係優先於兄弟姐妹的並列關係
廣度優先搜尋:用佇列來儲存操作——放入兩個或多個起始點,,實行先進先出原則,以其中一個起始點開始研究它的並列點,它的相鄰點暫不考慮。即兄弟姐妹關係優先於子女關係
引數傳遞:
引數列表:程式中兩部分之間的通訊機制
形參:列在子程式名後的括號中的識別符號
實參:子程式呼叫中列在括號中的識別符號
值參:由呼叫單元傳入實參的副本的形參
引用引數:由呼叫單元傳入實參的地址的形參
第九章 面向物件設計與高階程式設計語言
物件:在問題背景中相關的事物或實體
物件類或類:一組具有相似的屬性和行為的物件的描述
欄位:表示類的屬性
方法:定義了類的一種行為的特定演算法
頭腦風暴:一種集體行為,為的是生成解決某個特定問題要用到的候選類的列表
封裝:把資料和動作集中在一起,使資料和動作的邏輯屬性與它們的實現細節分離
責任演算法:
person類:有兩個責任需要分解,即初始化和輸出。由於姓名是一個類,可以讓這些類自己進行初始化並輸出自身
name類:這個類有兩個責任,即初始化和輸出,它們的演算法不同。初始化責任必須提示使用者輸入姓名,並且演算法必須讀入姓名。輸出責任則必須輸出姓和名,並給出合適的標籤
翻譯過程:
翻譯用高階程式設計語言編寫的程式的程式叫作編譯器
用高階程式設計語言編寫的程式———輸入———編譯器———輸入———用機器碼編寫的程式
直譯器:輸入用高階語言編寫的程式,指導計算機執行每個語句指定的動作的程式
位元組碼:編譯Java原始碼使用的標準機器語言
命令式正規化:面向過程的範型
面向物件的範型
宣告式正規化:函式式模型
邏輯程式設計
高階程式設計語言的功能性
布林表示式:是一個識別符號序列,識別符號之間由相容的運算子分隔,求得的值是true或false
一個布林表示式可以是:
一個布林變數
一個算術表示式加一個關係運算符,再加一個算術表示式
一個布林表示式加一個布林運算子,再加一個布林表示式
資料歸類:
只能在變數中儲存合適的型別的要求叫作強型別化,也就是說,當程式被執行時,它必須知道怎樣解釋記憶體中的內容
每一種資料型別都有特定的操作使得其可以合法地應用在這種型別的數值上。資料型別是描述一組數值和一組可以應用在這種型別的數值上的基本操作
強型別化:每個變數都有一個型別,只有這種型別的值才能儲存到該變數中
資料型別:一組值以及能夠應用於這種型別的值的基本操作集合的說明
整數 實數 字元 布林型 字串
宣告:把變數,動作或語言中的其他實體與識別符號關聯起來的語句,使程式設計師可以通過名字引用這些專案
保留字:一種語言中具有特殊意義的字,不能用它作為識別符號
區分大小寫
輸入、輸出結構
控制結構:確定程式中的其他指令的執行順序的指令
巢狀結構
非同步:不與計算機中的其他操作同時發生;換句話說,與程式的操作不同步。也叫作事件驅動處理,是被程式指令序列以外發生的事件所控制
封裝:實施資訊隱蔽的語言特性
物件:與問題背景相關的事物或實體
類:物件的模式
物件類或類:屬性和行為相似的一組物件的說明
物件:類的一個例項
類就像之前介紹的記錄,它們都是異構複合資料結構。記錄通常被認為是被動結構,而類則是主動結構
操作類的資料域的唯一方法是通過類中定義的方法
例項化:建立類的物件
繼承:類獲取其他類的屬性(資料欄位和方法)的機制
多型:語言在執行時確定給定呼叫將執行哪些可能的方法的能力