計(jì)算機(jī)二年級基礎(chǔ)知識_第1頁
計(jì)算機(jī)二年級基礎(chǔ)知識_第2頁
計(jì)算機(jī)二年級基礎(chǔ)知識_第3頁
計(jì)算機(jī)二年級基礎(chǔ)知識_第4頁
計(jì)算機(jī)二年級基礎(chǔ)知識_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

計(jì)算機(jī)二年級基礎(chǔ)知識數(shù)據(jù)結(jié)構(gòu)與算法◆算法的基本概念1.算法:是對問題處理方案的正確而完整的描述,是求解問題的方法,是指令的有效序列;2.具有5個(gè)特性:1有窮性在有窮步后完成算法程序的運(yùn)行時(shí)間是有限的2確定性每一步都有確定的含義3可行性4輸入一個(gè)算法有零個(gè)或多個(gè)輸入5輸出一個(gè)算法有一個(gè)或多個(gè)輸出3.算法的復(fù)雜度包括:時(shí)間復(fù)雜度和空間復(fù)雜度;二者沒有必然的聯(lián)系;時(shí)間復(fù)雜度:執(zhí)行算法所需要的計(jì)算工作量或基本運(yùn)算次數(shù);空間復(fù)雜度:算法所需要的空間的度量;◆數(shù)據(jù)結(jié)構(gòu)的定義1.數(shù)據(jù)結(jié)構(gòu)包括數(shù)據(jù)的邏輯結(jié)構(gòu)、數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)、數(shù)據(jù)的操作數(shù)據(jù)的邏輯結(jié)構(gòu):數(shù)據(jù)的外部結(jié)構(gòu),指各數(shù)據(jù)元素之間的邏輯關(guān)系,反映人們對數(shù)據(jù)含義的解釋;包括:線性結(jié)構(gòu)線性表、棧、隊(duì)列和非線性結(jié)構(gòu)樹和圖數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu):數(shù)據(jù)的物理結(jié)構(gòu),指數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示;一個(gè)邏輯結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu);◆線性表:線性表中元素的個(gè)數(shù)nn>=0定義為線性表的長度;順序存儲(chǔ)是線性表的一種最常用的存儲(chǔ)方式;線性表的順序存儲(chǔ)結(jié)構(gòu)和線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)分別是隨機(jī)存取的存儲(chǔ)結(jié)構(gòu)和順序存取的存儲(chǔ)結(jié)構(gòu);1.棧:是限定在表尾進(jìn)行插入和刪除操作的線性表;具有記憶功能只能順序存儲(chǔ)錯(cuò)允許插入和刪除的一端叫棧頂;另一端叫棧底;計(jì)算機(jī)二年級基礎(chǔ)知識全文共8頁,當(dāng)前為第1頁。后進(jìn)先出的線性表計(jì)算機(jī)二年級基礎(chǔ)知識全文共8頁,當(dāng)前為第1頁。2隊(duì)列:是限定在一端插入而在另一端刪除,插入端叫隊(duì)尾,刪除端叫對頭;先進(jìn)先出的線性表3棧和隊(duì)列的順序存儲(chǔ)結(jié)構(gòu)循環(huán)隊(duì)列屬于線性表存儲(chǔ)結(jié)構(gòu)中順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的前者;◆樹1.定義:樹的結(jié)點(diǎn)、度結(jié)點(diǎn)的度、葉子終端結(jié)點(diǎn)、數(shù)的度、深度、有序樹和無序數(shù)2.二叉樹:結(jié)點(diǎn)至多有兩棵子樹,并且二叉樹的子樹有之分,次序不能顛倒;性質(zhì):★在二叉樹的第i層上至多有2i-1個(gè)結(jié)點(diǎn)★深度為k的二叉樹至多有2k-1個(gè)結(jié)點(diǎn);★對任一個(gè)二叉樹T,如果其葉子終端結(jié)點(diǎn)數(shù)為n,度為二的結(jié)點(diǎn)數(shù)為m,則n=m+1.★具有n個(gè)結(jié)點(diǎn)的完全二叉樹的深度為k+1,其中k是㏒2n的整數(shù)部分;2.二叉樹的遍歷▼先序遍歷根—左—右▼中序遍歷左—根—右▼后序遍歷左—右—根◆查找算法1順序查找順序查找的平均查找長度為n+1/2,最壞的情況下比較的次數(shù)為n2二分查找最壞情況下次數(shù)為log2n限定于順序存儲(chǔ)的有序線性表◆排序算法1插入類排序▲直接插入排序▲折半插入排序▲希爾排序n^1.5計(jì)算機(jī)二年級基礎(chǔ)知識全文共8頁,當(dāng)前為第2頁。2交換類排序計(jì)算機(jī)二年級基礎(chǔ)知識全文共8頁,當(dāng)前為第2頁。▲冒泡排序最壞情況下的比較次數(shù)nn-1/2▲快速排序最壞情況下的比較次數(shù)nn-1/23選擇類排序例題精選:1.設(shè)一棵完全二叉樹共有699個(gè)結(jié)點(diǎn),則在該二叉樹中的葉子結(jié)點(diǎn)數(shù)為:3502.已知二叉樹后序遍歷序列是dabec,中序遍歷序列是debac,它的前序遍歷序列為:cedba3.要求內(nèi)存量最大的是:歸并排序4.在數(shù)據(jù)結(jié)構(gòu)中,與所使用的計(jì)算機(jī)無關(guān)的是數(shù)據(jù)的是:邏輯結(jié)構(gòu)5.6.已知數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),為節(jié)省時(shí)間,應(yīng)采取的算法是:直接插入排序7.用鏈?zhǔn)奖硎揪€性表的優(yōu)點(diǎn)是:便于插入和刪除操作;程序設(shè)計(jì)基礎(chǔ)1.程序設(shè)計(jì)風(fēng)格好的程序設(shè)計(jì)風(fēng)格有利于提高程序的正確性、可讀性、可維護(hù)性和可用性;要是程序有良好的風(fēng)格概括起來可以分為4部分:源程序文檔化、數(shù)據(jù)說明、語句結(jié)構(gòu)、輸入輸出方法;用戶所定義的標(biāo)示符必須以字母或下劃線開頭;大、小寫字母代表不同標(biāo)識;2.結(jié)構(gòu)化程序設(shè)計(jì)1結(jié)構(gòu)化程序設(shè)計(jì)的基本特征:▼程序有3中基本結(jié)構(gòu)組成:順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)▼整個(gè)程序采用模塊化結(jié)構(gòu);模塊劃分的原則:模塊內(nèi)具有高內(nèi)聚度、模塊間具有低耦合度;▼有限的使用轉(zhuǎn)移語句,只限定在一個(gè)結(jié)構(gòu)的內(nèi)部跳轉(zhuǎn),不允許從一個(gè)結(jié)構(gòu)跳到另一結(jié)構(gòu);▼程序設(shè)計(jì)時(shí)采用“至頂向下、逐步詳細(xì)”的實(shí)施方法;計(jì)算機(jī)二年級基礎(chǔ)知識全文共8頁,當(dāng)前為第3頁。2結(jié)構(gòu)化程序設(shè)計(jì)的3種基本結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)計(jì)算機(jī)二年級基礎(chǔ)知識全文共8頁,當(dāng)前為第3頁。3種基本結(jié)構(gòu)組成的算法只能完成符合結(jié)構(gòu)化的任務(wù)3結(jié)構(gòu)化程序設(shè)計(jì)的方法:逐步求精和模塊化程序設(shè)計(jì)方法;結(jié)構(gòu)化設(shè)計(jì)的總體思想是采用模塊化結(jié)構(gòu),自上而下,逐步求精;3.面向?qū)ο蟪绦蛟O(shè)計(jì)●基本概念對象:系統(tǒng)中運(yùn)行的實(shí)體,是有特殊屬性數(shù)據(jù)和方法的實(shí)體類:由屬性和方法構(gòu)成;一組具有相同的數(shù)據(jù)結(jié)構(gòu)和相同的行為特征的對象的集合稱為類在面對對象的方法中,類的實(shí)例稱為對象面向?qū)ο蟪绦蛟O(shè)計(jì)特征的是:繼承性、多態(tài)性、封裝性在面向?qū)ο蟮姆椒ㄖ?實(shí)現(xiàn)信息隱蔽是依靠對象的封裝任何對象都必須有繼承性錯(cuò)例題精選:1.在面對對象的方法中,一個(gè)對象請求另一個(gè)對象為其服務(wù)的方式是通過發(fā)送:信息2.面對對象的設(shè)計(jì)方法與傳統(tǒng)的面向過程的方法有本質(zhì)的區(qū)別,它的基本原理是:使用現(xiàn)實(shí)世界的概念抽象的思考問題從而自然地解決問題.3.結(jié)構(gòu)化方法中,軟件功能分解屬于軟件開發(fā)階段中的總體設(shè)計(jì)4.結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是:程序的易讀性5.面向?qū)ο蟮脑O(shè)計(jì)程序主要考慮的是:提高軟件的可重用性6.類通過接口與外界發(fā)生關(guān)系.軟件工程基礎(chǔ)1.軟件工程的基本概念1定義:軟件是程序、數(shù)據(jù)與相關(guān)文檔的集合;軟件包括系統(tǒng)軟件和應(yīng)用軟件2軟件工程的基本思想是軟件開發(fā)中,應(yīng)用工程化原則進(jìn)行軟件開發(fā),并將這個(gè)思想貫穿在軟件開發(fā)的整個(gè)過程中;計(jì)算機(jī)二年級基礎(chǔ)知識全文共8頁,當(dāng)前為第4頁。軟件工程的3要素:方法、工具和過程計(jì)算機(jī)二年級基礎(chǔ)知識全文共8頁,當(dāng)前為第4頁。3軟件的生命周期:從軟件定義、開發(fā)、使用、維護(hù)到報(bào)廢為止的整個(gè)過程;分三階段:設(shè)計(jì)階段、開發(fā)階段、維護(hù)階段包括:問題定義、可行性分析、需求分析、總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測試和維護(hù)問題定義:確定開發(fā)的任務(wù)可行性分析:確定問題的可行性需求分析:對用戶要求進(jìn)行分析,明確目標(biāo)系統(tǒng)要做什么總體設(shè)計(jì):把軟件功能轉(zhuǎn)化為所需要的體系結(jié)構(gòu),即如何解決問題;詳細(xì)設(shè)計(jì):怎樣具體的解決問題2.結(jié)構(gòu)化分析方法1結(jié)構(gòu)化分析SA是面向數(shù)據(jù)流進(jìn)行需求分析的方法SA方法的基本思想正是運(yùn)用了分解和抽象兩個(gè)基本手段,采用:自頂向下,逐步分解的分析思路;2數(shù)據(jù)流圖基本圖形符號:在結(jié)構(gòu)化方法中,用數(shù)據(jù)流程圖DFD作為描述工具的軟件開發(fā)階段是:需求分析3數(shù)據(jù)字典在結(jié)構(gòu)化分析的數(shù)據(jù)流圖中,利用數(shù)據(jù)字典對其中的圖形元素進(jìn)行確切解釋.3.軟件設(shè)計(jì)1概要設(shè)計(jì)總體設(shè)計(jì)◆包括兩個(gè)主要階段:系統(tǒng)設(shè)計(jì)確定具體的實(shí)現(xiàn)方案和結(jié)構(gòu)設(shè)計(jì)確定每個(gè)系統(tǒng)的模塊組成及模塊間的關(guān)系◆模塊之間聯(lián)系越緊密,其耦合性就越強(qiáng),模塊的獨(dú)立性就越差;一個(gè)模塊內(nèi)個(gè)要素聯(lián)系越緊密,則它的內(nèi)聚性就越高;模塊劃分原則:高內(nèi)聚低耦合計(jì)算機(jī)二年級基礎(chǔ)知識全文共8頁,當(dāng)前為第5頁。2詳細(xì)設(shè)計(jì)計(jì)算機(jī)二年級基礎(chǔ)知識全文共8頁,當(dāng)前為第5頁?!艚Y(jié)構(gòu)化程序設(shè)計(jì)的要點(diǎn):采用自頂向下、逐步求精的程序設(shè)計(jì)方法,一個(gè)程序只有一個(gè)入口和一個(gè)出口;◆詳細(xì)設(shè)計(jì)的常用工具:程序流程圖、盒圖、PAD和PDL3軟件測試目的◆軟件測試的目的是盡可能多的發(fā)現(xiàn)程序中的錯(cuò)誤;◆軟件測試方法:靜態(tài)測試和動(dòng)態(tài)測試黑盒測試法和白盒測試法黑盒測試包括:等價(jià)分析法、邊值分析法、因果圖法和錯(cuò)誤推測法白盒測試法測試的原則之一就是保證所測模塊中的每一個(gè)獨(dú)立的路徑至少執(zhí)行一次;4程序調(diào)試分為靜態(tài)調(diào)試和動(dòng)態(tài)調(diào)試調(diào)試的目的:改正錯(cuò)誤經(jīng)調(diào)試后還必須進(jìn)行再測試5軟件維護(hù)軟件維護(hù)就是在軟件已經(jīng)交付使用以后,為改正錯(cuò)誤或滿足新的需求而修改軟件的過程;例題精選:1.分析的結(jié)果是產(chǎn)生需求規(guī)格說明書;2.軟件詳細(xì)設(shè)計(jì)的主要任務(wù)是確定每一個(gè)模塊的算法和使用的數(shù)據(jù)結(jié)構(gòu);3.進(jìn)行單元測試時(shí),常用的方法時(shí)采用白盒測試,輔以黑盒測試;4.軟件工程的出現(xiàn)是由于軟件危機(jī)的出現(xiàn),人們提出了軟件工程學(xué)的原理設(shè)計(jì)軟件;5.?dāng)?shù)據(jù)字典是各類數(shù)據(jù)描述的集合,通常包括4個(gè)部分:數(shù)據(jù)項(xiàng)、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)加工;數(shù)據(jù)庫設(shè)計(jì)基礎(chǔ)1.數(shù)據(jù)庫1數(shù)據(jù)庫設(shè)計(jì)的根本目的是要解決數(shù)據(jù)共享的問題;2數(shù)據(jù)庫的特點(diǎn):計(jì)算機(jī)二年級基礎(chǔ)知識全文共8頁,當(dāng)前為第6頁。▼數(shù)據(jù)按一定的數(shù)據(jù)模型組織和存儲(chǔ);計(jì)算機(jī)二年級基礎(chǔ)知識全文共8頁,當(dāng)前為第6頁。▼冗余度較小▼數(shù)據(jù)的獨(dú)立性較高;數(shù)據(jù)獨(dú)立性:數(shù)據(jù)的組織結(jié)構(gòu)和存儲(chǔ)方法與應(yīng)用程序互不依賴、彼此獨(dú)立;▼易擴(kuò)展▼可為多種用戶共享2.數(shù)據(jù)庫管理系統(tǒng)DBMS位于用戶與操作系統(tǒng)之間的完成數(shù)據(jù)管理的系統(tǒng)軟件;3.數(shù)據(jù)庫系統(tǒng)由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員和用戶組成;最核心的部分是數(shù)據(jù)庫管理系統(tǒng);4.數(shù)據(jù)模型1實(shí)體聯(lián)系模型及E-R圖3部分:實(shí)體、聯(lián)系和屬性實(shí)體集間的聯(lián)系:一對一聯(lián)系、一對多聯(lián)系和多對多聯(lián)系2層次、網(wǎng)狀、關(guān)系模型層次模型:有且只有一個(gè)結(jié)點(diǎn)無雙親,其他結(jié)點(diǎn)只有一個(gè)雙親;用樹形結(jié)構(gòu)來表示各實(shí)體與實(shí)體之間的聯(lián)系;在關(guān)系數(shù)據(jù)庫中,把數(shù)據(jù)表示成二維表,每個(gè)二維表稱為關(guān)系;一個(gè)關(guān)系對應(yīng)一張二維表;關(guān)系的屬性名稱為關(guān)系模式;5.關(guān)系運(yùn)算1并2差3交4笛卡爾積×6.專門關(guān)系運(yùn)算:選擇、連接和投影1從關(guān)系中找到滿足條件的所有元組稱為選擇2從關(guān)系中挑選若干屬性組成新的關(guān)系稱為投影7.數(shù)據(jù)庫設(shè)計(jì)步驟:計(jì)算機(jī)二年級基礎(chǔ)知識全文共8頁,當(dāng)前為第7頁。1需求分析階段

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論