歡迎來到逍遙右腦記憶網(wǎng)-免費提供各種記憶力訓(xùn)練學(xué)習(xí)方法!

計算機等級考試二級公共基礎(chǔ)考前背誦版

編輯: 路逍遙 關(guān)鍵詞: 學(xué)科記憶方法實例 來源: 逍遙右腦記憶


下面分為四個部分進行組織。文中標注了三個星號的,表示非常重要,基本每次考試都是必考;標注了兩個星號或一個星號的,表示也較重要,很容易考到。出現(xiàn)在【】括號中的內(nèi)容,表示要很精確的背下來的。整個文檔中的五頁,建議考前都要認真的記憶。

第一部分 算法與數(shù)據(jù)結(jié)構(gòu) (歷年比例41%)
1、算法
◆ 問題處理方案的正確而完整的描述稱為【算法】。算法分析的目的是,分析算法的效率以求改進。算法的基本特征是【可行性】、【確定性】、【有窮性】和擁有足夠情報。
◆ 算法的有窮性是指:算法程序的運行時間是有限的。
◆ 算法的復(fù)雜度是衡量算法好壞的度量,分為【時間復(fù)雜度】和【空間復(fù)雜度】。
★★ 時間復(fù)雜度是指執(zhí)行算法所需要的【計算工作量】;算法的空間復(fù)雜度是指算法執(zhí)行過程中所需的【存儲空間】。
◆ 算法時間復(fù)雜度或空間復(fù)雜度中的一項的值,沒有辦法推出另一項的值。

2、數(shù)據(jù)結(jié)構(gòu)
◆ 數(shù)據(jù)結(jié)構(gòu)分為【邏輯結(jié)構(gòu)】和【存儲結(jié)構(gòu)】。線性結(jié)構(gòu)和非線性結(jié)構(gòu)屬于邏輯結(jié)構(gòu);順序、鏈式、索引屬于存儲結(jié)構(gòu)(物理結(jié)構(gòu))。循環(huán)隊列屬于【存儲結(jié)構(gòu)】。
★ 數(shù)據(jù)的存儲結(jié)構(gòu)又稱為物理結(jié)構(gòu),是數(shù)據(jù)的邏輯結(jié)構(gòu)在計算機存儲空間中的存放形式。
◆ 一個邏輯結(jié)構(gòu)可以有多種存儲結(jié)構(gòu),且各種存儲結(jié)構(gòu)影響數(shù)據(jù)處理的效率。程序執(zhí)行的效率與數(shù)據(jù)的存儲結(jié)構(gòu)密切相關(guān)。
◆ 數(shù)據(jù)結(jié)構(gòu)分為線性結(jié)構(gòu)和非線性結(jié)構(gòu),帶鏈的隊列屬于【線性結(jié)構(gòu)】。
◆ 線性表的存儲結(jié)構(gòu)主要分為順序存儲結(jié)構(gòu)和鏈式存儲結(jié)構(gòu)。順序存儲結(jié)構(gòu)的存儲一定是連續(xù)的,鏈式存儲的存儲空間不一定是連續(xù)的。
◆ 有序線性表既可以采用順序存儲結(jié)構(gòu),也可以采用鏈式存儲結(jié)構(gòu)。
◆ 隊列是一種特殊的線性表,循環(huán)隊列按照【先進先出】原則組織數(shù)據(jù)。循環(huán)隊列是隊列的【順序】存儲結(jié)構(gòu)。
◆ 數(shù)據(jù)的獨立性分為【物理獨立】性和【邏輯獨立性】。當數(shù)據(jù)的存儲結(jié)構(gòu)改變時,其邏輯結(jié)構(gòu)可以不變,因此,基于邏輯結(jié)構(gòu)的應(yīng)用程序可以不用修改,稱為【物理獨立性】。

3、棧和隊列
★★ 棧是一種特殊的線性表,是只能在一端進行插入和刪除的線性表,特點是FILO(First In Last Out)。
★★ 棧是【先進后出】的線性表;棧具有記憶作用;對棧的插入與刪除操作中,不需要改變【棧底指針】。假定讓元素1、2、3、A、B依次入棧,則出棧的順序是:B、A、3、2、1。
◆ 棧與隊列都是線性結(jié)構(gòu),樹是非線性結(jié)構(gòu)。支持子程序調(diào)用的數(shù)據(jù)結(jié)構(gòu)是【!。    
◆ 棧與隊列的共同點是,都只允許在【端點處】插入和刪除元素。
◆ 棧只能順序存儲的描述是錯誤的。?梢杂小卷樞蚝玩準健績煞N存儲方式。
★★ 隊列是允許在一段插入,在另一端進行刪除的線性表,其特點是【先進先出】。
◆ 循環(huán)隊列中元素的個數(shù)是由隊頭指針和隊尾指針共同決定。循環(huán)隊列的頭指針為front,尾指針為rear,容量為maxSize,則循環(huán)隊列中元素的個數(shù)是【 (rear-front+maxSize) mod maxSize】。

4、線性鏈表
◆ 線性鏈表是線性表的鏈式存儲結(jié)構(gòu)。用鏈表表示線性表的優(yōu)點是【便于插入和刪除操作】。
◆ 線性鏈表的存儲空間不一定連續(xù),且個元素的存儲順序是任意的。

5、樹與二叉樹
◆ 在樹結(jié)構(gòu)中,一個結(jié)點所擁有的后件(繼)的個數(shù)稱為該結(jié)點的度,所有結(jié)點中最大的度稱為樹的度。二叉樹各結(jié)點的度只可能取值0、1、2,不可能是其它值。換言之,知道了度為1結(jié)點數(shù)量的前提下,葉子結(jié)點或度為2的結(jié)點中知道其一,就可以求出總的結(jié)點數(shù)。

★★★下面關(guān)于計算結(jié)點數(shù)量的幾個性質(zhì),非常重要:
(1)對任意的二叉樹,葉子結(jié)點的數(shù)量,比度為2的結(jié)點數(shù)量多一個(換言之,已知葉子結(jié)點的數(shù)量,減去1則是度為2的結(jié)點數(shù)量;已知度為2的結(jié)點數(shù)量,加上1就是葉子結(jié)點數(shù)量)
(2)完全二叉樹如果有N個結(jié)點,當N為奇數(shù)的時候,葉子結(jié)點數(shù)為(N+1)/2,此時二叉樹只有度為0的葉子結(jié)點及度為2的結(jié)點,沒有度為1的結(jié)點;當N為偶數(shù)的時候,葉子結(jié)點的數(shù)量為N/2。(注意條件,必須是完全二叉樹,當然包括滿二叉樹)
(3)滿二叉樹第K層上的結(jié)點數(shù)量為2K-1;深度為K的滿二叉樹,結(jié)點總數(shù)為2K-1。
上述的計算公式,關(guān)鍵要能夠應(yīng)用,例如,深度為7的滿二叉樹,度為2的結(jié)點數(shù)量是多少?既然是滿二叉樹,葉子結(jié)點的數(shù)量就是第7層的結(jié)點數(shù)量,也就是26,可以算出葉子結(jié)點為64,因此度為2的結(jié)點數(shù)是63(葉子結(jié)點數(shù)減去1)。

★★★ 二叉樹的前序遍歷、中序遍歷、后續(xù)遍歷:前中后三個詞是相對于根來講的,前序是【根-->左-->右】,中序是【左-->根-->右】,后續(xù)是【左-->右-->根】。具體操作為:
先序遍歷(D L R): 訪問根結(jié)點,按先序遍歷左子樹,按先序遍歷右子樹。
中序遍歷(L D R): 按中序遍歷左子樹,訪問根結(jié)點,按中序遍歷右子樹。
后序遍歷(L R D): 按后序遍歷左子樹,按后序遍歷右子樹,訪問根結(jié)點。
下面以中序遍歷為例,來講解實際的解題方法:對一棵樹,將根結(jié)點下的左子樹用一個橢圓圈起來,右子樹也用一個橢圓圈起來。之后,在左子樹上標記上1,在根結(jié)點標記上2,在右子樹上標記上3。對在左邊橢圓內(nèi)的左子樹,現(xiàn)在把它單獨拿出來分析。把它的左子樹圈起來標上1.1,根結(jié)點標記上1.2,右子樹標上1.3。按照上述方法依次往下,直到樹不能拆分,然后按照“左-->根--->右”的順序?qū)懗鼋Y(jié)點的訪問先后即可。

6、查找技術(shù)
◆ 對于長度為n的線性表,順序查找最壞情況下需要比較n次。(對數(shù)據(jù)是否有序沒有要求)。◆ 順序查找最好情況下查詢次數(shù)是1,最壞情況下是n,平均為(1+n)/2。
★★ 對于長度為n的有序線性表,二分法最壞情況下只需要比較log2n次。(數(shù)據(jù)必須有序)
◆ 能用二分法進行查找的是【順序存儲的有序線性表】。

7、排序技術(shù)
★★ 對于長度為n的線性表,【冒泡排序、快速排序、簡單插入排序、簡單選擇排序】這四種排序方式在最壞情況下的比較次數(shù)相同,都是【n(n-1)/2】。堆排序的效率最高,是【nlog2n】。★★ 希爾排序最壞情況下需要次比較【n1.5】。希爾排序?qū)儆凇静迦腩惻判蚍ā俊?br /> ◆ 已知數(shù)據(jù)表A中每個元素距最終位置不遠,為節(jié)省時間,應(yīng)該采用的算法是【直接插入排序】。選擇排序、插入排序、快速排序、歸并排序中對內(nèi)存要求最大的是【歸并排序】。

第二部分 軟件工程基礎(chǔ) (歷年比例27%)
1、軟件工程基本概念
★★ 軟件是包括【程序】、【數(shù)據(jù)】及【相關(guān)文檔】的完整集合,軟件是一種邏輯產(chǎn)品。軟件工程三要素包括【方法、工具和過程】,其中【過程】支持軟件開發(fā)的各個環(huán)節(jié)的控制和管理。
◆ 軟件工程的核心思想:把軟件產(chǎn)品當作是一個工程產(chǎn)品來處理,強調(diào)在軟件開發(fā)過程中應(yīng)用【工程化】原則。
◆ 從工程管理角度,軟件設(shè)計一般分為兩步完成,它們是【概要設(shè)計】和【詳細設(shè)計】。
★★ 軟件生命周期可分為多個階段,一般分為【定義】階段、【開發(fā)】階段和【維護】階段,編碼和測試屬于【開發(fā)階段】。
◆ 需求分析階段產(chǎn)生的主要文檔是【軟件需求規(guī)格說明書】。軟件需求的規(guī)格說明書應(yīng)該有完整性、無歧義性、正確性、可驗證性、可修改性等特征,其中最重要的是【正確性】。

2、結(jié)構(gòu)化分析與設(shè)計
★★ 需求分析的分發(fā)有:【結(jié)構(gòu)化】需求分析方法,【面向?qū)ο蟆康姆治龇椒。DFD是【需求分析階段】可以使用的工具之一。
◆ 結(jié)構(gòu)化分析的常用工具:數(shù)據(jù)流圖(DFD);數(shù)據(jù)字典;判定樹;判定表。
◆ 在結(jié)構(gòu)化分析使用數(shù)據(jù)流圖(DFD)時候,利用【數(shù)據(jù)字典】對其中的圖形元素進行確切的解釋!緮(shù)據(jù)字典】是結(jié)構(gòu)化分析的核心。
◆ 典型的數(shù)據(jù)流類型有兩種,【交換性】和【事務(wù)型】。
◆ 常見的過程設(shè)計工具有:圖形工具(程序流程圖、N-S,PAD,HIPO)、表格工具(判定表)、語言工具(PDL偽碼)。
◆ 內(nèi)聚性是模塊內(nèi)部的聯(lián)系,耦合性模塊之間的相互聯(lián)系的緊密程度。
★★★ 追求目標是:模塊的內(nèi)聚程度要高,模塊間的耦合程度要盡量弱。即高內(nèi)聚低耦合。
★★ 程序流程圖中帶有箭頭的線段表示的是【控制流】。【平行四邊形】代表輸入輸出,【矩形】代表處理,菱形代表【判斷】(注意,數(shù)據(jù)流圖中的箭頭,代表【數(shù)據(jù)流】)。
◆ 符合結(jié)構(gòu)化原則的三種基本控制結(jié)構(gòu)是:【順序結(jié)構(gòu)】,【選擇結(jié)構(gòu)】和【循環(huán)結(jié)構(gòu)】。

3、軟件測試與維護
★★ 軟件測試的目的是盡可能多的發(fā)現(xiàn)程序中的錯誤,但是不包括改正錯誤。(軟件調(diào)試的目的才是改正錯誤)
★★ 軟件測試分為靜態(tài)測試和動態(tài)測試,其中【靜態(tài)測試】是指不執(zhí)行程序,只對程序文本進行檢查。軟件的動態(tài)測試主要包括【黑盒測試】和【白盒測試】。
◆ 黑盒測試的方法有等價類劃分法,邊界值分析法,錯誤推測法,因果圖;白盒測試主要方法有邏輯覆蓋、基本路徑測試。(考試時給出一種方法的名字,你要知道屬于白盒還是黑盒)
【白盒測試】的原則之一是保證所測模塊的每一個獨立路徑至少要執(zhí)行一次。白盒測試將程序看做是【路徑的集合】。
◆ 軟件測試一般按照四個步驟進行:單元測試,集成測試,驗收測試和系統(tǒng)測試。集成測試應(yīng)該在【單元測試】之后進行。
◆ 在模塊測試中,需要為每個被測試的模塊設(shè)計【驅(qū)動模塊】和【承接模塊】。其中,驅(qū)動模塊的作用是將測試的數(shù)據(jù)傳給被測試的模塊,并顯示結(jié)果。
◆ 【測試用例】是為某個目標而編制的一組測試輸入、執(zhí)行條件及預(yù)期結(jié)果。測試用例包括輸入值集和【輸出值集】。
★★ 診斷和改正程序中的錯誤稱為【程序調(diào)試】(或軟件調(diào)試),通常也稱為Debug。軟件調(diào)試可分為【靜態(tài)調(diào)試】和【動態(tài)調(diào)試】。
◆ 在軟件已經(jīng)交付使用之后,為了改正錯誤或滿足新的需要而修改軟件的過程稱為【軟件維護】。注意軟件維護不屬于軟件生命周期【開發(fā)階段】的任務(wù)。

第三部分 數(shù)據(jù)庫設(shè)計基礎(chǔ) (歷年比例24%)
1、數(shù)據(jù)庫系統(tǒng)基本概念
◆ 數(shù)據(jù)庫設(shè)計的根本目標是要解決【數(shù)據(jù)共享問題】。在數(shù)據(jù)庫管理技術(shù)發(fā)展的三個階段中,數(shù)據(jù)共享最好的是【數(shù)據(jù)庫系統(tǒng)階段】。數(shù)據(jù)獨立性最高的階段是【數(shù)據(jù)庫系統(tǒng)階段】。
◆ 數(shù)據(jù)庫系統(tǒng)與文件系統(tǒng)的區(qū)別是前者具有【特定的數(shù)據(jù)模型】。
◆ 數(shù)據(jù)庫系統(tǒng)常見的數(shù)據(jù)模型有層次模型,網(wǎng)絡(luò)模型和【關(guān)系模型】。
★★ 數(shù)據(jù)庫系統(tǒng)的核心是【數(shù)據(jù)庫管理系統(tǒng)】。
◆ DBS包括DB和DBMS。完整講,數(shù)據(jù)庫系統(tǒng)DBS由數(shù)據(jù)庫DB、數(shù)據(jù)庫管理系統(tǒng)DBMS、數(shù)據(jù)庫管理員DBA、硬件平臺和軟件平臺組成。
◆ 數(shù)據(jù)庫應(yīng)用系統(tǒng)的核心是【數(shù)據(jù)庫維護】。
◆ 數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu):內(nèi)模式處于最底層,它反映了數(shù)據(jù)在計算機物理結(jié)構(gòu)中的實際存儲形式;概念模式處于中層,它放映了設(shè)計者的數(shù)據(jù)全局邏輯要求,與軟硬件環(huán)境無關(guān);
外模式處于最外層,它反映了用戶對數(shù)據(jù)的要求。
◆ 在數(shù)據(jù)庫系統(tǒng)中,用戶所見的數(shù)據(jù)模式為【外模式】。
◆ 數(shù)據(jù)庫設(shè)計的四個階段是:需求分析、概念設(shè)計、【邏輯設(shè)計】和【物理設(shè)計】。將E-R圖轉(zhuǎn)換成關(guān)系數(shù)據(jù)模型屬于【邏輯設(shè)計】階段。
◆ 數(shù)據(jù)庫管理系統(tǒng)提供的數(shù)據(jù)語言:數(shù)據(jù)定義語言DDL,數(shù)據(jù)操縱語言DML,數(shù)據(jù)控制語言DCL。SQL的全稱是Structured Query Language,中文意思是【結(jié)構(gòu)化查詢語言】。

2、數(shù)據(jù)模型
★★★ 實體之間的聯(lián)系用樹形結(jié)構(gòu)來表示的模型是【層次模型】。采用二維表來表示的是【關(guān)系模型】。在關(guān)系數(shù)據(jù)庫中,把數(shù)據(jù)表示成二維表,每一個二維表稱為【關(guān)系】。
◆ 在關(guān)系數(shù)據(jù)庫中,用來表示實體之間聯(lián)系的是【關(guān)系】。
◆ 將E-R圖轉(zhuǎn)化為關(guān)系模式時,實體和聯(lián)系都可以表示為【關(guān)系】。
★★★ 確定兩個實體之間是一對一、一對多、還是多對多的方法是:選擇實體A,看是否有多個實體B與之對應(yīng);選擇實體B,看是否有多個實體A與之對應(yīng)。例如在“學(xué)生學(xué)習(xí)課程”中的兩個實體,學(xué)生與課程,一個學(xué)生可以學(xué)習(xí)多門課程,一門課程可以被多個學(xué)生學(xué)習(xí),所以二者是一種多對多的關(guān)系。
★★ 在E-R 圖中,用來表示實體的圖形是【矩形】。用來表示【屬性】的圖形是橢圓。用菱形來表示聯(lián)系。
★★ 一個關(guān)系表的行稱為【元組】(或記錄),列稱為【屬性】(或字段)。
◆ 在二維表中,元組的【分量】不能再分為更小的數(shù)據(jù)線。
◆ 為了建立一個關(guān)系,首先要構(gòu)造數(shù)據(jù)的【邏輯關(guān)系】。

3、關(guān)系代數(shù)
◆ 在交、差、投影中,不改變關(guān)系表中的屬性個數(shù)但是能減少元組個數(shù)的是【交】運算。
★★★ 關(guān)系運算的規(guī)則(下面介紹的7種運算,考試的時候一般會考察一種,都要背)
(1)并運算R∪S:并運算是兩個表行上的合并,重復(fù)的行只出現(xiàn)一次。
(2)交運算R∩S:交運算是選出兩個表中的公共行。
(3)差運算R-S:差運算是從表R中,刪除R與S中都出現(xiàn)過的行。
(4)選擇運算:選出二維表【部分的行】稱為選擇運算。
(5)投影運算:選出二維表【部分的列】稱為投影運算。
(6)連接運算:根據(jù)兩個表的共同屬性的值,將它們連接起來,無需去除共同屬性。如果去掉了重復(fù)屬性,就稱為自然連接。
(7)笛卡爾乘積:將關(guān)系R中的每一行依次與關(guān)系S中的每一行進行排列組合。
注意:除了選擇運算和投影運算操作的是單個表之外,其余的元算都需要兩個表(兩個關(guān)系)。其中,并運算、交運算和差運算要求兩個關(guān)系R與S要具有相同個數(shù)的屬性。

第四部分 程序設(shè)計基礎(chǔ) (歷年比例8%)
★★ 程序設(shè)計總體原則:清晰第一、效率第二。
◆ 良好程序風(fēng)格包括:源程序要文檔化,數(shù)據(jù)說明的次序要規(guī)范化,避免濫用goto語句。
◆ 結(jié)構(gòu)化程序設(shè)計的核心是算法,面向?qū)ο蟮暮诵氖菍ο?類)。
★★ 結(jié)構(gòu)化程序設(shè)計的基本原則是:【自頂向下】、【逐步求精】、【模塊化】、【限制使用Goto語句】。
★★ 類是一組具有相同屬性和相同操作的對象的集合。面向?qū)ο竽P椭,最基本的概念是對象和【類】。在面向(qū)ο蠓椒ㄖ,類的實例稱為【對象】,實現(xiàn)信息隱藏是通過對象的【封裝】。
★★ 面向?qū)ο蟮奶卣靼ǔ橄,【封裝】、【繼承】、【多態(tài)】。
◆ 繼承提高了軟件的【可重用性】。
◆ 對象是【屬性和方法】的封裝體,對象間的通訊靠【消息傳遞】,操作是對象的動態(tài)性屬性

本文來自:逍遙右腦記憶 http://www.portlandfoamroofing.com/jiyi/xuekejiyi/352061.html

相關(guān)閱讀:化學(xué)知識巧記憶
會計考試六大巧記法-編口訣記憶
地理快速記憶法
監(jiān)理工程師考試:法律法規(guī)記憶小妙招
國家司法考試證券法考點匯總記憶