計(jì)算機(jī)二級公共基礎(chǔ)知識錦集
計(jì)算機(jī)科學(xué)被認(rèn)為比其它科學(xué)學(xué)科與數(shù)學(xué)的聯(lián)系更加密切,一些觀察者說計(jì)算就是一門數(shù)學(xué)科學(xué)。下面是小編整理的關(guān)于計(jì)算機(jī)二級公共基礎(chǔ)知識錦集,歡迎大家參考!
1.3棧及線性鏈表
考點(diǎn)5 棧及其基本運(yùn)算
考試鏈接:
考點(diǎn)5在筆試考試中,是一個(gè)必考的內(nèi)容,在筆試考試中出現(xiàn)的幾率為100%,主要是以選擇的形式出現(xiàn),分值為2分,此考點(diǎn)為重點(diǎn)掌握內(nèi)容,讀者應(yīng)該掌握棧的運(yùn)算 。
1.棧的基本概念
棧是限定只在一端進(jìn)行插入與刪除的線性表,通常稱插入、刪除的這一端為棧頂,另一端為棧底。當(dāng)表中沒有元素時(shí)稱為空棧。棧頂元素總是后給插入的元素,從而也是最先被刪除的元素;棧底元素總是最先給插入的元素,從而也是最后才能被刪除的元素。棧是按照"先進(jìn)后出"或"后進(jìn)先出"的原則組織數(shù)據(jù)的。
2.棧的順序存儲及其運(yùn)算
用一維數(shù)組S(1∶m)作為棧的順序存儲空間,其中m為最大容量。
在棧的順序存儲空間S(1∶m)中,S(bottom)為棧底元素,S(top)為棧頂元素。top=0表示?;top=m表示棧滿。
棧的基本運(yùn)算有三種:入棧、退棧與讀棧頂元素。
(1)入棧運(yùn)算:入棧運(yùn)算是指在棧頂位置插入一個(gè)新元素。首先將棧頂指針加一(即top加1),然后將新元素插入到棧頂指針指向的位置。當(dāng)棧頂指針已經(jīng)指向存儲空間的最后一個(gè)位置時(shí),說明?臻g已滿,不可能再進(jìn)行入棧操作。這種情況稱為棧"上溢"錯(cuò)誤。
(2)退棧運(yùn)算:退棧是指取出棧頂元素并賦給一個(gè)指定的變量。首先將棧頂元素(棧頂指針指向的元素)賦給一個(gè)指定的變量,然后將棧頂指針減一(即top減1)。當(dāng)棧頂指針為0時(shí),說明?,不可進(jìn)行退棧操作。這種情況稱為棧的"下溢"錯(cuò)誤。
(3)讀棧頂元素:讀棧頂元素是指將棧頂元素賦給一個(gè)指定的變量。這個(gè)運(yùn)算不刪除棧頂元素,只是將它賦給一個(gè)變量,因此棧頂指針不會改變。當(dāng)棧頂指針為0時(shí),說明?,讀不到棧頂元素。
小技巧:棧是按照"先進(jìn)后出"或"后進(jìn)先出"的原則組織數(shù)據(jù),但是出棧方式有多種選擇,在考題中經(jīng)?疾楦鞣N不同的出棧方式。
考點(diǎn)6 線性鏈表的基本概念
考試鏈接:
考點(diǎn)6在筆試考試中出現(xiàn)的幾率為30%,主要是以選擇的形式出現(xiàn),分值為2分,此考點(diǎn)為識記內(nèi)容。重點(diǎn)識記結(jié)點(diǎn)的組成。
在鏈?zhǔn)酱鎯Ψ绞街校竺總(gè)結(jié)點(diǎn)由兩部分組成:一部分用于存放數(shù)據(jù)元素值,稱為數(shù)據(jù)域,另一部分用于存放指針,稱為指針域。其中指針用于指向該結(jié)點(diǎn)的前一個(gè)或后一個(gè)結(jié)點(diǎn)(即前件或后件)。
鏈?zhǔn)酱鎯Ψ绞郊瓤捎糜诒硎揪性結(jié)構(gòu),也可用于表示非線性結(jié)構(gòu)。
(1)線性鏈表
線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)稱為線性鏈表。
在某些應(yīng)用中,對線性鏈表中的每個(gè)結(jié)點(diǎn)設(shè)置兩個(gè)指針,一個(gè)稱為左指針,用以指向其前件結(jié)點(diǎn);另一個(gè)稱為右指針,用以指向其后件結(jié)點(diǎn)。這樣的表稱為雙向鏈表。
(2)帶鏈的棧
棧也是線性表,也可以采用鏈?zhǔn)酱鎯Y(jié)構(gòu)。帶鏈的棧可以用來收集計(jì)算機(jī)存儲空間中所有空閑的存儲結(jié)點(diǎn),這種帶鏈的棧稱為可利用棧。
疑難解答:在鏈?zhǔn)浇Y(jié)構(gòu)中,存儲空間位置關(guān)系與邏輯關(guān)系是什么?
在鏈?zhǔn)酱鎯Y(jié)構(gòu)中,存儲數(shù)據(jù)結(jié)構(gòu)的存儲空間可以不連續(xù),各數(shù)據(jù)結(jié)點(diǎn)的存儲順序與數(shù)據(jù)元素之間的邏輯關(guān)系可以不一致,而數(shù)據(jù)元素之間的邏輯關(guān)系是由指針域來確定的。
1.4樹與二叉樹
考點(diǎn)7 樹與二叉樹及其基本性質(zhì)
考試鏈接:
考點(diǎn)7在筆試考試中,是一個(gè)必考的內(nèi)容,在筆試考試中出現(xiàn)的幾率為100%,主要是以選擇的形式出現(xiàn),有時(shí)也有出現(xiàn)在填空題中,分值為2分,此考點(diǎn)為重點(diǎn)掌握內(nèi)容。重點(diǎn)識記樹及二叉樹的性質(zhì)。
誤區(qū)警示:
滿二叉樹也是完全二叉樹,而完全二叉樹一般不是滿二叉樹。應(yīng)該注意二者的區(qū)別。
1、樹的基本概念
樹(tree)是一種簡單的非線性結(jié)構(gòu)。在樹結(jié)構(gòu)中,每一個(gè)結(jié)點(diǎn)只有一個(gè)前件,稱為父結(jié)點(diǎn),沒有前件的結(jié)點(diǎn)只有一個(gè),稱為樹的根結(jié)點(diǎn)。每一個(gè)結(jié)點(diǎn)可以有多個(gè)后件,它們稱為該結(jié)點(diǎn)的子結(jié)點(diǎn)。沒有后件的結(jié)點(diǎn)稱為葉子結(jié)點(diǎn)。
在樹結(jié)構(gòu)中,一個(gè)結(jié)點(diǎn)所擁有的后件個(gè)數(shù)稱為該結(jié)點(diǎn)的度。葉子結(jié)點(diǎn)的度為0。在樹中,所有結(jié)點(diǎn)中的最大的度稱為樹的度。
2、二叉樹及其基本性質(zhì)
(1)二叉樹的定義
二叉樹是一種很有用的非線性結(jié)構(gòu),具有以下兩個(gè)特點(diǎn):
①非空二叉樹只有一個(gè)根結(jié)點(diǎn);
、诿恳粋(gè)結(jié)點(diǎn)最多有兩棵子樹,且分別稱為該結(jié)點(diǎn)的左子樹和右子樹。
由以上特點(diǎn)可以看出,在二叉樹中,每一個(gè)結(jié)點(diǎn)的度最大為2,即所有子樹(左子樹或右子樹)也均為二叉樹,而樹結(jié)構(gòu)中的每一個(gè)結(jié)點(diǎn)的度可以是任意的。另外,二叉樹中的每個(gè)結(jié)點(diǎn)的子樹被明顯地分為左子樹和右子樹。在二叉樹中,一個(gè)結(jié)點(diǎn)可以只有左子樹而沒有右子樹,也可以只有右子樹而沒有左子樹。當(dāng)一個(gè)結(jié)點(diǎn)既沒有左子樹也沒有右子樹時(shí),該結(jié)點(diǎn)即為葉子結(jié)點(diǎn)。
(2)二叉樹的基本性質(zhì)
二叉樹具有以下幾個(gè)性質(zhì):
性質(zhì)1:在二叉樹的第k層上,最多有2k-1(k≥1)個(gè)結(jié)點(diǎn);
性質(zhì)2:深度為m的二叉樹最多有2m-1個(gè)結(jié)點(diǎn);
性質(zhì)3:在任意一棵二叉樹中,度為0的結(jié)點(diǎn)(即葉子結(jié)點(diǎn))總是比度為2的結(jié)點(diǎn)多一個(gè)。
性質(zhì)4:具有n個(gè)結(jié)點(diǎn)的二叉樹,其深度至少為[log2n]+1,其中[log2n]表示取log2n的整數(shù)部分。
小技巧:在二叉樹的遍歷中,無論是前序遍歷,中序遍歷還是后序遍歷,二叉樹的葉子結(jié)點(diǎn)的先后順序都是不變的。
3、滿二叉樹與完全二叉樹
滿二叉樹是指這樣的一種二叉樹:除最后一層外,每一層上的所有結(jié)點(diǎn)都有兩個(gè)子結(jié)點(diǎn)。在滿二叉樹中,每一層上的結(jié)點(diǎn)數(shù)都達(dá)到最大值,即在滿二叉樹的第k層上有2k-1個(gè)結(jié)點(diǎn),且深度為m的滿二叉樹有2m-1個(gè)結(jié)點(diǎn)。
完全二叉樹是指這樣的二叉樹:除最后一層外,每一層上的結(jié)點(diǎn)數(shù)均達(dá)到最大值;在最后一層上只缺少右邊的若干結(jié)點(diǎn)。
對于完全二叉樹來說,葉子結(jié)點(diǎn)只可能在層次最大的兩層上出現(xiàn):對于任何一個(gè)結(jié)點(diǎn),若其右分支下的子孫結(jié)點(diǎn)的最大層次為p,則其左分支下的子孫結(jié)點(diǎn)的最大層次或?yàn)閜,或?yàn)閜+1。
完全二叉樹具有以下兩個(gè)性質(zhì):
性質(zhì)5:具有n個(gè)結(jié)點(diǎn)的完全二叉樹的深度為[log2n]+1。
性質(zhì)6:設(shè)完全二叉樹共有n個(gè)結(jié)點(diǎn)。如果從根結(jié)點(diǎn)開始,按層次(每一層從左到右)用自然數(shù)1,2,……,n給結(jié)點(diǎn)進(jìn)行編號,則對于編號為k(k=1,2,……,n)的結(jié)點(diǎn)有以下結(jié)論:
、偃鬹=1,則該結(jié)點(diǎn)為根結(jié)點(diǎn),它沒有父結(jié)點(diǎn);若k>1,則該結(jié)點(diǎn)的父結(jié)點(diǎn)編號為INT(k/2)。
、谌2k≤n,則編號為k的結(jié)點(diǎn)的左子結(jié)點(diǎn)編號為2k;否則該結(jié)點(diǎn)無左子結(jié)點(diǎn)(顯然也沒有右子結(jié)點(diǎn))。
③若2k+1≤n,則編號為k的結(jié)點(diǎn)的右子結(jié)點(diǎn)編號為2k+1;否則該結(jié)點(diǎn)無右子結(jié)點(diǎn)。
考點(diǎn)8 二叉樹的遍歷
考試鏈接:
考點(diǎn)8在筆試考試中考核幾率為30%,分值為2分,讀者應(yīng)該熟練掌握各種遍歷的具體算法,能由兩種遍歷的結(jié)果推導(dǎo)另一種遍歷的結(jié)果。
在遍歷二叉樹的過程中,一般先遍歷左子樹,再遍歷右子樹。在先左后右的原則下,根據(jù)訪問根結(jié)點(diǎn)的次序,二叉樹的遍歷分為三類:前序遍歷、中序遍歷和后序遍歷。
(1)前序遍歷:先訪問根結(jié)點(diǎn)、然后遍歷左子樹,最后遍歷右子樹;并且,在遍歷左、右子樹時(shí),仍然先訪問根結(jié)點(diǎn),然后遍歷左子樹,最后遍歷右子樹。
(2)中序遍歷:先遍歷左子樹、然后訪問根結(jié)點(diǎn),最后遍歷右子樹;并且,在遍歷左、右子樹時(shí),仍然先遍歷左子樹,然后訪問根結(jié)點(diǎn),最后遍歷右子樹。
(3)后序遍歷:先遍歷左子樹、然后遍歷右子樹,最后訪問根結(jié)點(diǎn);并且,在遍歷左、右子樹時(shí),仍然先遍歷左子樹,然后遍歷右子樹,最后訪問根結(jié)點(diǎn)。
疑難解答:樹與二叉樹的不同之處是什么?
在二叉樹中,每一個(gè)結(jié)點(diǎn)的度最大為2,即所有子樹(左子樹或右子樹)也均為二叉樹,而樹結(jié)構(gòu)中的每一個(gè)結(jié)點(diǎn)的度可以是任意的。
【計(jì)算機(jī)二級公共基礎(chǔ)知識】相關(guān)文章:
計(jì)算機(jī)二級公共基礎(chǔ)知識試題及答案03-15
關(guān)于計(jì)算機(jī)二級公共基礎(chǔ)知識常見的知識點(diǎn)03-10
2017年計(jì)算機(jī)二級公共基礎(chǔ)知識試題及答案01-21
2016年計(jì)算機(jī)二級公共基礎(chǔ)知識考試試題03-07
2017年計(jì)算機(jī)二級公共基礎(chǔ)知識試題及答案解析03-10
2017年計(jì)算機(jī)二級公共基礎(chǔ)知識重要知識點(diǎn)03-07
2016下半年全國計(jì)算機(jī)二級考試公共基礎(chǔ)知識習(xí)題03-11