二级c语言基础知识pdf下载,全国计算机等级考试二级C语言公共基础知识.pdf
您所在位置:網(wǎng)站首頁 > 海量文檔
 > 資格/認(rèn)證考試 > 計算機(jī)等級考試
全國計算機(jī)等級考試二級C語言公共基礎(chǔ)知識.pdf9頁
本文檔一共被下載:次,您可全文免費在線閱讀后下載本文檔。
下載提示
1.本站不保證該用戶上傳的文檔完整性,不預(yù)覽、不比對內(nèi)容而直接下載產(chǎn)生的反悔問題本站不予受理。
2.該文檔所得收入(下載+內(nèi)容+預(yù)覽三)歸上傳者、原創(chuàng)者。
3.登錄后可充值,立即自動返金幣,充值渠道很便利
全國計算機(jī)等級考試二級 C 語言公共基礎(chǔ)知識
第一章數(shù)據(jù)結(jié)構(gòu)與算法
1.1 算法
算法:是指解題方案的準(zhǔn)確而完整的描述。
算法不等于程序,也不等計算機(jī)方法,程序的編制不可能優(yōu)于算法的設(shè)計。
算法的基本特征:是一組嚴(yán)謹(jǐn)?shù)囟x運算順序的規(guī)則,每一個規(guī)則都是有效的,是明確的,
此順序?qū)⒃谟邢薜拇螖?shù)下終止。特征包括:
(1)可行性;
(2 )確定性,算法中每一步驟都必須有明確定義,不充許有模棱兩可的解釋,不允許有多
義性;
(3 )有窮性,算法必須能在有限的時間內(nèi)做完,即能在執(zhí)行有限個步驟后終止,包括合理
的執(zhí)行時間的含義;
(4 )擁有足夠的情報。
算法的基本要素:一是對數(shù)據(jù)對象的運算和操作;二是算法的控制結(jié)構(gòu)。
指令系統(tǒng):一個計算機(jī)系統(tǒng)能執(zhí)行的所有指令的集合。
基本運算和操作包括:算術(shù)運算、邏輯運算、關(guān)系運算、數(shù)據(jù)傳輸。
算法的控制結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。
算法基本設(shè)計方法:列舉法、歸納法、遞推、遞歸、減斗遞推技術(shù)、回溯法。
算法復(fù)雜度:算法時間復(fù)雜度和算法空間復(fù)雜度。
算法時間復(fù)雜度是指執(zhí)行算法所需要的計算工作量。
算法空間復(fù)雜度是指執(zhí)行這個算法所需要的內(nèi)存空間。
1.2 數(shù)據(jù)結(jié)構(gòu)的基本基本概念
數(shù)據(jù)結(jié)構(gòu)研究的三個方面:
(1)數(shù)據(jù)集合中各數(shù)據(jù)元素之間所固有的邏輯關(guān)系,即數(shù)據(jù)的邏輯結(jié)構(gòu);
(2 )在對數(shù)據(jù)進(jìn)行處理時,各數(shù)據(jù)元素在計算機(jī)中的存儲關(guān)系,即數(shù)據(jù)的存儲結(jié)構(gòu);
(3 )對各種數(shù)據(jù)結(jié)構(gòu)進(jìn)行的運算。
數(shù)據(jù)結(jié)構(gòu)是指相互有關(guān)聯(lián)的數(shù)據(jù)元素的集合。
數(shù)據(jù)的邏輯結(jié)構(gòu)包含:
(1)表示數(shù)據(jù)元素的信息;
(2 )表示各數(shù)據(jù)元素之間的前后件關(guān)系。
數(shù)據(jù)的存儲結(jié)構(gòu)有順序、鏈接、索引等。
線性結(jié)構(gòu)條件:
(1)有且只有一個根結(jié)點;
(2 )每一個結(jié)點最多有一個前件,也最多有一個后件。
非線性結(jié)構(gòu):不滿足線性結(jié)構(gòu)條件的數(shù)據(jù)結(jié)構(gòu)。
1.3 線性表及其順序存儲結(jié)構(gòu)
線性表由一組數(shù)據(jù)元素構(gòu)成,數(shù)據(jù)元素的位置只取決于自己的序號,元素之間的相對位置是
線性的。
在復(fù)雜線性表中,由若干項數(shù)據(jù)元素組成的數(shù)據(jù)元素稱為記錄,而由多個記錄構(gòu)成的線性表
又稱為文件。
非空線性表的結(jié)構(gòu)特征:
(1)且只有一個根結(jié)點a1,它無前件;
(2 )有且只有一個終端結(jié)點an,它無后件;
(3 )除根結(jié)點與終端結(jié)點外,其他所有結(jié)點有且只有一個前件,也有且只有一個后件。結(jié)
點個數(shù)n 稱為線性表的長度,當(dāng)n=0 時,稱為空表。
線性表的順序存儲結(jié)構(gòu)具有以下兩個基本特點:
(1)線性表中所有元素的所占的存儲空間是連續(xù)的;
(2 )線性表中各數(shù)據(jù)元素在存儲空間中是按邏輯順序依次存放的。
ai 的存儲地址為:ADR(ai)=ADR(a1)+(i- 1)k,,ADR(a1)為第一個元素的地址,k 代表每個元
素占的字節(jié)數(shù)。
順序表的運算:插入、刪除。 (詳見14--16 頁)
1.4 棧和隊列
棧是限定在一端進(jìn)行插入與刪除的線性表,允許插入與刪除的一端稱為棧頂,不允許插入與
刪除的另一端稱為棧底。
棧按照 “先進(jìn)后出”(FILO )或 “后進(jìn)先出”(LIFO )組織數(shù)據(jù),棧具有記憶作用。用 top
表示棧頂位置,用bottom 表示棧底。
棧的基本運算:(1)插入元素稱為入棧運算;(2 )刪除元素稱為退棧運算;(3)讀棧頂元素
是將棧頂元素賦給一個指定的變量,此時指針無變化。
隊列是指允許在一端 (隊尾)進(jìn)入插入,而在另一端 (隊頭)進(jìn)行刪除的線性表。Rear 指
針指向隊尾,front 指針指向隊頭。
隊列是 “先進(jìn)行出”(FIFO )或 “后進(jìn)后出”(LILO )的線性表。
隊列運算包括 (1)入隊運算:從隊尾插入一個元素;(2 )退隊運算:從隊頭刪除一個元素。
循環(huán)隊列:s=0 表示隊列空,s=1 且front=rear 表示隊列滿
1.5 線性鏈表
數(shù)據(jù)結(jié)構(gòu)中的每一個結(jié)點對應(yīng)于一個存儲單元,這種存儲單元稱為存儲結(jié)點,簡稱結(jié)點。
結(jié)點由兩部分組成:(1)用于存儲數(shù)據(jù)元素值,稱為數(shù)據(jù)域;(2 )用于存放指針,稱為指針
域,用于指向前一個或后一個結(jié)點。
在鏈?zhǔn)酱鎯Y(jié)構(gòu)中,存儲數(shù)據(jù)結(jié)構(gòu)的存儲空間可以不連續(xù),各數(shù)據(jù)結(jié)點的存儲順序與數(shù)據(jù)元
素之間的邏輯關(guān)系可以不一致,而數(shù)據(jù)元素之間的邏輯關(guān)系是由指針域來確定的。
鏈?zhǔn)酱鎯Ψ绞?/p>
發(fā)表評論
請自覺遵守互聯(lián)網(wǎng)相關(guān)的政策法規(guī),嚴(yán)禁發(fā)布色情、暴力、反動的言論。
用戶名:
驗證碼:
匿名?
發(fā)表評論
總結(jié)
以上是生活随笔為你收集整理的二级c语言基础知识pdf下载,全国计算机等级考试二级C语言公共基础知识.pdf的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言程序设计复习提纲,C语言程序设计复
- 下一篇: ios 调用c语言函数指针,第09天C语