



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、計算機二級公共基礎(chǔ)知識重點計算機二級公共基礎(chǔ)知識一、數(shù)據(jù)結(jié)構(gòu)與算法數(shù)據(jù)結(jié)構(gòu)的基本概念數(shù)據(jù)結(jié)構(gòu)指相互有關(guān)聯(lián)的數(shù)據(jù)元素的集合。數(shù)據(jù)邏輯結(jié)構(gòu)反映數(shù)據(jù)元素之間的邏輯關(guān)系;存儲結(jié)構(gòu)為數(shù)據(jù)的邏輯結(jié)構(gòu)在計算機存儲空間中的存放形式,分為順序存儲、 鏈式存儲、 索引存儲和散列存儲4 種方式。數(shù)據(jù)結(jié)構(gòu)按各元素之間前后件關(guān)系的復(fù)雜度可劃分為如下兩種:(1)線性結(jié)構(gòu):有且只有一個根節(jié)點,且每個結(jié)點最多有一個直接前驅(qū)和一個直接后繼的非空數(shù)據(jù)結(jié)構(gòu)。(2)非線性結(jié)構(gòu):不滿足線性結(jié)構(gòu)的數(shù)據(jù)結(jié)構(gòu)。算法1. 算法的基本概念( 1)概念:算法是指解題方案的準確而完善的描述。( 2)基本特征:可行性、確定性、有窮性、擁有足夠的情報。
2、( 3)基本要素:對數(shù)據(jù)對象的運算和操作、算法和控制結(jié)構(gòu)。( 4)設(shè)計的基本方法:列舉法、歸納法、遞推法、遞歸法、減半遞推技術(shù)、回溯法。2. 算法的復(fù)雜度( 1)算法的時間復(fù)雜度:執(zhí)行算法所需要的計算工作量。( 2)算法的空間復(fù)雜度:執(zhí)行算法所需的內(nèi)存空間。線性表及其順序存儲結(jié)構(gòu)1. 線性表的基本概念線性結(jié)構(gòu)又稱線性表,線性表是最簡單也是最常用的一種數(shù)據(jù)結(jié)構(gòu)。2. 線性表的順序存儲結(jié)構(gòu)順序存儲結(jié)構(gòu)的特點如下:( 1)元素所占的存儲空間必須連接。( 2)元素在存儲空間的位置是按邏輯順序依次存放的。3. 線性表的插入運算若在第i 個元素之前插入一個新元素,可先把原來第i 個結(jié)點至第n 個結(jié)點依次往
3、后移一個元素位置。然后把新結(jié)點放在第i 個位置上,最后修正線性表的結(jié)點個數(shù)。4. 線性表的刪去運算若要刪去第 i 個位置的元素, 可先把第 i 個之后不包括第 i 個元素的 n-i 個元素依次前移一個位置,然后修正線性表的結(jié)點數(shù)。棧和列隊1. 棧及其基本運算棧是一種特殊的線性表, 其插入運算與刪除運算都只在線性表的一端進行, 又稱為先進后出表或后進先出表。棧頂是允許插入與刪除的一端,而棧底是棧頂?shù)牧硪欢?。所謂空棧就是棧中沒有元素的棧。棧的特點如下:( 1)棧頂元素師最后被插入和最早被刪除的元素。( 2)棧底元素師最早被插入和最后被刪除的元素。( 3)棧有記憶的作用。( 4)在順序存儲結(jié)構(gòu)下,棧
4、的插入和刪除運算不需移動表中其他數(shù)據(jù)元素。( 5)棧頂指針 top 動態(tài)反映了棧中元素的變化情況。順序存儲和運算包括人棧運算、退棧運算和讀棧頂運算。2. 列隊及其基本運算隊列是指允許在一端進行插入, 在另一端進行刪除的線性表、 又稱 “先進先出 ”的線性表。 隊尾就是允許插入的一端,一般用尾指針指向隊尾元素。排頭就是允許刪除的一端,一般用頭指針指向頭元素的前一位置。循環(huán)列隊及其運算包括入隊運算與退隊運算。樹與二叉樹1. 樹的基本概念樹是一種簡單的非線性結(jié)構(gòu), 樹中有且僅有一個沒有前驅(qū)的結(jié)點為 “根 ”,其余結(jié)點互不相交的有限點分成 m 個互不相交的有限集合 T1,T2,Tm ,每個集合又是一棵
5、樹, 稱為 T1,T2,Tm為跟結(jié)點的子樹。( 1)父結(jié)點:每一個結(jié)點只有一個前件,無前件的結(jié)點只有一個,稱為樹的根結(jié)點( 2)子結(jié)點:每一個結(jié)點可以有多個后件,無后件的結(jié)點稱為葉子結(jié)點。( 3)樹的度:所以結(jié)點最大的度( 4)樹的深度:樹的最大層次。2. 二叉樹及其基本性質(zhì)二叉樹是一種非線性結(jié)構(gòu), 是有限的結(jié)點的集合, 改集合為空或由一個根結(jié)點及兩棵互不相交的左右二叉子樹組成??煞譃闈M二叉樹和完全二叉樹,其中滿二叉樹一定是完全二叉樹,但完全二叉樹不一定是滿二叉樹。二叉樹具有如下特點:( 1)二叉樹可為空,空的二叉樹無結(jié)點,非空二叉樹有且只有一個根結(jié)點;( 2)每個結(jié)點最多可有兩棵子樹,分別稱
6、為左子樹和右子樹。3. 二叉樹的存儲結(jié)構(gòu)二叉樹通常采用鏈式存儲結(jié)構(gòu), 存儲結(jié)點由數(shù)據(jù)域和指針域組成。 對滿二叉樹和完全二叉樹可按層次進行順序存儲。4. 二叉樹的遍歷二叉樹的遍歷是指不重復(fù)地訪問二叉樹中所以結(jié)點, 主要指非空二叉樹, 對于空二叉樹則結(jié)束返回。二叉樹的遍歷分為前序遍歷、中序遍歷和后序遍歷。查找技術(shù)(1)順序查找:在線性表中查找指定的元素。(2)二分查找:這種查找只適用于順序存儲結(jié)構(gòu)的線性表,且必是有序表,應(yīng)有二分查找時,會反復(fù)查找知道成功或子表長度為0 時結(jié)束。排序技術(shù)( 1)交換類排序法: 借助數(shù)據(jù)元素之間的互相交換進行排序,如冒泡排序法和快速排序法。( 2)插入類排序法:將無序
7、序列中的各元素依次插入到有序的線性表中,如簡單插入排序法和希爾排序法。( 3)選擇類排序法:從整個線性表中選出最小的元素,將其交換到表的最前面,然后查找余下元素中的最小的, 交換至上一個最小元素的后面, 以此類推, 包括簡單選擇排序法和推排序法。1.2 程序設(shè)計基礎(chǔ)程序設(shè)計方法與風格( 1)程序設(shè)計指設(shè)計、編制、調(diào)試程序的方法和過程,程序設(shè)計方法主要有結(jié)構(gòu)化程序設(shè)計方法、軟件過程方法和面向?qū)ο蠓椒?。?2)良好的設(shè)計風格要注重源程序文檔化、數(shù)據(jù)說明方法、 語句的結(jié)構(gòu)和輸入輸出等因素。面向?qū)ο蟮某绦蛟O(shè)計面向?qū)ο蠓椒ǖ谋举|(zhì)是主張從客觀世界固有的事物出發(fā)來構(gòu)造系統(tǒng),強調(diào)建立的系統(tǒng)能映射問題域。面向?qū)?/p>
8、象的方法中可能涉及的主要概念如下:( 1)對象:用來表示客觀世界中任何實體,可以是任何有明確邊界和意義的東西。( 2)類:具有共同屬性、共同方法的對象的集合。( 3)消息:實例間傳遞的信息,它統(tǒng)一了數(shù)據(jù)流和控制流。( 4)繼承:使用已有的類定義作為基礎(chǔ)建立新類的定義技術(shù)。( 5)實例:一個具體對象就是其對應(yīng)分類的一個實例。( 6)多態(tài)性:指對象根據(jù)所接受到底信息而做出動作,同樣的信息被不同的對象接受時有不同行動的現(xiàn)象。面向?qū)ο蟪绦蛟O(shè)計的優(yōu)點:與人類習慣的思維方法一致、穩(wěn)定性好、可重用性好、易于開發(fā)大型軟件產(chǎn)品、可維護性好。1.3 軟件工程基礎(chǔ)軟件工程基本概念1. 軟件的定義與特點軟件是指與計算
9、機系統(tǒng)的操作有關(guān)的計算機程序、數(shù)據(jù)。規(guī)程、 規(guī)則,以及可能有的文件、文檔和軟件具有如下的特點:( 1)是邏輯實體,有抽象性;( 2)生產(chǎn)沒有明顯的制作過程。( 3)運行使用期間不存在磨損老化的問題。( 4)開發(fā)、運行對計算機系統(tǒng)有依賴性,故軟件存在移植問題。( 5)復(fù)雜性較高,成本昂貴。( 6)開發(fā)涉及諸多社會因素。2. 軟件危機與軟件工程( 1)軟件危機:泛指在計算機軟件的開發(fā)和維護中所遇到的一系列嚴重的問題。( 2)軟件工程:應(yīng)用于計算機軟件的定義、開發(fā)和維護的一整套方法、工具、文檔、實踐標準和工序。( 3)軟件工程包括開發(fā)技術(shù)和軟件工程管理兩部分。( 4)軟件工程過程:把輸入轉(zhuǎn)換為輸出的
10、一組彼此相關(guān)的資源和活動。( 5)軟件生命周期:軟件產(chǎn)品從提出、實現(xiàn)、使用維護到停止使用的過程。( 6)軟件工程的目標:在給定成本、進度的前提下,開發(fā)出具有有效性、可靠性、可理解性、可維護性、可重用性、可試用性、可移植性、可追蹤性和可互操作性且滿足用戶需求的產(chǎn)品。( 7)軟件工程到底原則:抽象、信息隱蔽、模塊化、局部化、確定性、一致性、完備性和可驗證性。( 8)軟件開發(fā)工具:從初期的單向工具向集成工具發(fā)展,軟件開發(fā)的方法必須得到相應(yīng)工具的支持。( 9)軟件開發(fā)環(huán)境:全面支持開發(fā)過程的軟件工具的集合。計算機輔助軟件工程是當前研究工作和發(fā)展方向。結(jié)構(gòu)化分析方法需求分析可概括為:需求獲取、需求分析、
11、編寫需求規(guī)格說明書和需求評審。常用的分析方法如下:( 1)結(jié)構(gòu)化分析方法:實質(zhì)著眼于數(shù)據(jù)流,自頂向下,逐層分解,建立系統(tǒng)的處理流程,常用數(shù)據(jù)流圖、數(shù)字字典、判斷樹和判斷表等工具。( 2)面向?qū)ο蠓治龇椒?。結(jié)構(gòu)化設(shè)計方法1. 軟件設(shè)計的基本概念和方法軟件設(shè)計就是把軟件需求轉(zhuǎn)換為軟件表示的過程。(1)基本原理:抽象、模塊化、信息隱蔽、模塊獨立性。(2)基本思想:將軟件設(shè)計成有相對獨立、單一功能的模塊組成的結(jié)構(gòu)。2. 概要設(shè)計( 1)概要設(shè)計包括 4 個任務(wù):設(shè)計軟件系統(tǒng)結(jié)構(gòu)、數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)庫設(shè)計、編寫概要設(shè)計文檔、概要設(shè)計文檔審評。( 2)面向數(shù)據(jù)流的設(shè)計方法:數(shù)據(jù)流圖的信息分為交換流和事物流,結(jié)
12、構(gòu)形式有交換型和事務(wù)型。3. 詳細設(shè)計的工具(1)圖形工具:程序流程圖、N-S 、PAD 、 HIPO 。( 2)表格工具:判定表。( 3)語言工具: PDL (偽碼)。軟件測試軟件測試的目的是為了發(fā)現(xiàn)錯誤,其相應(yīng)的準則如下:( 1)所以測試應(yīng)追溯到用戶需求。( 2)嚴格執(zhí)行測試計劃,排除測試的隨意性。( 3)充分注意測試中的群集現(xiàn)象。( 4)程序員應(yīng)避免檢查自己的程序。( 5)窮舉測試不可能。( 6)妥善保存設(shè)計計劃、測試用例、出錯統(tǒng)計和最終分析報告。軟件測試的方法從是否需要執(zhí)行被測試軟件的角度,可分為靜態(tài)測試和動態(tài)測試,按功能可分為白盒測試和黑盒測試。( 1)白盒測試:又稱結(jié)構(gòu)測試,是根據(jù)
13、軟件的內(nèi)部邏輯設(shè)計和工作過程,檢查軟件內(nèi)部成分。主要方法有邏輯覆蓋測試、基本路徑測試等。( 2)黑盒測試:又稱功能測試,是根據(jù)規(guī)格說明書的功能來設(shè)計測試的,主要方法有等價劃分、邊界值分析法、錯誤推測法、因果圖發(fā)等。程序的調(diào)試程序調(diào)試的主要任務(wù)是診斷和改正程序中的錯誤,應(yīng)用的主要方法有強行排錯法、回溯法和原因排除法。1.4 數(shù)據(jù)庫設(shè)計基礎(chǔ)數(shù)據(jù)庫系統(tǒng)的基本概念( 1)數(shù)據(jù):描述事物的符號記錄,分為臨時性數(shù)據(jù)和永久性數(shù)據(jù)。( 2)數(shù)據(jù)庫:長期存儲在計算機內(nèi)的、有組織的、可共享的數(shù)據(jù)集合。( 3)數(shù)據(jù)庫管理系統(tǒng):負責數(shù)據(jù)庫中:數(shù)據(jù)組織、數(shù)據(jù)操作、數(shù)據(jù)維護、控制及保護和數(shù)據(jù)服務(wù)的一種系統(tǒng)軟件。(4)數(shù)據(jù)
14、庫技術(shù)發(fā)展經(jīng)歷了人工管理階段、文件系統(tǒng)階段、數(shù)據(jù)庫系統(tǒng)階段等3 個階段。(5)數(shù)據(jù)庫系統(tǒng)具有集成性、高共享性、低冗余性、數(shù)據(jù)統(tǒng)一管理與控制等特點。(6)三級模式(概念模式、內(nèi)模式、外模式)和二級模式(外模式/ 概念模式的映射、概念模式 / 內(nèi)模式的映射)構(gòu)成了數(shù)據(jù)庫系統(tǒng)內(nèi)部的抽象結(jié)構(gòu)體系。數(shù)據(jù)模型數(shù)據(jù)模型從抽象層次上描述了系統(tǒng)的靜態(tài)特征、動態(tài)行為和約束條件, 描述的內(nèi)容包括數(shù)據(jù)機構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)約束。概念數(shù)據(jù)模型、邏輯數(shù)據(jù)模型和物理數(shù)據(jù)模型是數(shù)據(jù)模型的3個層次。( 1)E-R 模型:提供了表示實體、 屬性和聯(lián)系的方法。 實體與實體之間聯(lián)系有 “一對一 ”、“一對多 ”和 “多對多 ”。( 2
15、)層次模型:利用樹形結(jié)構(gòu)表示實體及其之間的聯(lián)系,其中結(jié)點是實體,樹枝是聯(lián)系,從上到下是一對多的關(guān)系。( 3)網(wǎng)狀模型:用網(wǎng)狀結(jié)構(gòu)表示實體及其之間的聯(lián)系,是層次模型的擴展。網(wǎng)狀模型以記錄型為結(jié)點,反映現(xiàn)實中較為復(fù)雜的事物聯(lián)系。( 4)關(guān)系模型:采用二維表來表示,可進行數(shù)據(jù)查詢、增加、刪除及修改等操作。關(guān)系模型允許定義 “實體完整性 ”、 “參照完整性 ”和 “用戶定義的完整性 ”3種約束。1. 鍵:二維表中唯一能標識元祖的最小屬性集。2. 候選鍵:二維表中可能有點所有的鍵。3. 主鍵:從二維表所有鍵中被取出的一個作為用戶使用的鍵。關(guān)系代數(shù)( 1)傳統(tǒng)的集合運算包括關(guān)系并運算、關(guān)系交運算、關(guān)系差運算和廣義笛卡爾積、( 2)專門的關(guān)系運算包括選擇、投影和連接。數(shù)據(jù)庫設(shè)計與管理1. 數(shù)據(jù)庫設(shè)計概述數(shù)據(jù)庫的設(shè)計一般以過程迭代和逐步求精為基本思想, 是應(yīng)用面向數(shù)據(jù)的方法和面向過程的方法進行的數(shù)據(jù)庫的設(shè)計步驟如下:需求分析 概念設(shè)計 邏輯設(shè)計 物理數(shù)據(jù) 編碼 測試 運行 進一步修改2. 數(shù)據(jù)庫設(shè)計的需求分析需求收集和分析師數(shù)據(jù)庫設(shè)計的第一階段。 在這一階段常用結(jié)構(gòu)化分析方法和面向?qū)ο蟮姆椒?,其主要工作有繪制數(shù)據(jù)流程圖、 數(shù)據(jù)分析、 功能分析、 確定功能處理模塊和數(shù)據(jù)間關(guān)系。數(shù)據(jù)字典包括數(shù)據(jù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 食品科技產(chǎn)業(yè)園建設(shè)項目發(fā)展前景分析
- 書法出版合同樣本
- 買賣合同簽租船合同樣本
- 鄉(xiāng)下抬錢合同樣本
- 中介傭金合同正式合同樣本
- 科技創(chuàng)新中心項目前景與可行性分析
- 公司掛靠經(jīng)營合同樣本
- 倉庫電源維修合同標準文本
- 工業(yè)數(shù)字化人才培養(yǎng)的新路徑與實施策略
- 閥門行業(yè)發(fā)展趨勢與未來市場展望分析
- 京劇頭飾美術(shù)課件
- 數(shù)據(jù)庫應(yīng)用技術(shù)-第三次形考作業(yè)(第10章~第11章)-國開-參考資料
- 垃圾分類我宣講(課件)三年級下冊勞動人民版
- 重慶市2025屆高三3月適應(yīng)性月考語文試卷及參考答案
- T-CECS 10390-2024 建筑幕墻用背栓
- 國旗下講話第三周校長講話稿:以習慣鑄舟楫 以品格揚云帆-讓成長在堅守中綻放華章
- 三門峽水庫實習報告
- 文化產(chǎn)業(yè)項目風險管理及應(yīng)對措施
- 民用無人機操控員執(zhí)照(CAAC)考試復(fù)習重點題庫500題(含答案)
- 價值共創(chuàng)理論形成路徑探析與未來研究展望
- 破釜沉舟成語故事課件全
評論
0/150
提交評論