版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、2021/3/10講解:XX1 計(jì)算機(jī)等級考試計(jì)算機(jī)等級考試 公共基礎(chǔ)知識公共基礎(chǔ)知識 講解:XX第2頁 2021/3/10 計(jì)算機(jī)二級考試公共基礎(chǔ)知識計(jì)算機(jī)二級考試公共基礎(chǔ)知識大綱大綱 q 數(shù)據(jù)結(jié)構(gòu)與算法數(shù)據(jù)結(jié)構(gòu)與算法 q 程序設(shè)計(jì)基礎(chǔ)程序設(shè)計(jì)基礎(chǔ) q 軟件工程基礎(chǔ)軟件工程基礎(chǔ) q 數(shù)據(jù)庫設(shè)計(jì)基礎(chǔ)數(shù)據(jù)庫設(shè)計(jì)基礎(chǔ) 這四個(gè)方面在試卷中出現(xiàn)的情況是:選擇題10個(gè)(20分),填空題5個(gè) (10分),總分值占到了試卷卷面分的30,是一個(gè)不小的比例。 講解:XX第3頁 2021/3/10 計(jì)算機(jī)二級考試公共基礎(chǔ)知識試卷分析計(jì)算機(jī)二級考試公共基礎(chǔ)知識試卷分析 章節(jié)章節(jié) 考試時(shí)間考試時(shí)間 數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)
2、與算法與算法 程序設(shè)計(jì)程序設(shè)計(jì) 基礎(chǔ)基礎(chǔ) 軟件工程軟件工程 基礎(chǔ)基礎(chǔ) 數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫設(shè)計(jì) 基礎(chǔ)基礎(chǔ) 2007年4月10分2分10分8分 2007年9月12分4分8分6分 2008年4月10分2分8分10分 2008年9月10分2分8分10分 2009年3月10分2分8分10分 2009年9月10分2分8分10分 2010年3月10分0分10分10分 講解:XX第4頁 2021/3/10 算法的基算法的基 本概念本概念 2.2.算法復(fù)雜算法復(fù)雜 度的概念和度的概念和 意義意義 數(shù)據(jù)結(jié)構(gòu)的概念數(shù)據(jù)結(jié)構(gòu)的概念 線性表線性表 棧和隊(duì)列棧和隊(duì)列 樹與二叉樹樹與二叉樹 查找技術(shù)查找技術(shù) 排序技術(shù)排序技術(shù)
3、 對于等級考試,這個(gè)部分的考核對于等級考試,這個(gè)部分的考核重點(diǎn)主要重點(diǎn)主要在在算法和數(shù)據(jù)結(jié)構(gòu)的基本概算法和數(shù)據(jù)結(jié)構(gòu)的基本概 念念、二叉樹二叉樹(遍歷、結(jié)點(diǎn)),遍歷、結(jié)點(diǎn)),還有還有排序和查找排序和查找考試中也經(jīng)常會涉及到??荚囍幸步?jīng)常會涉及到。 講解:XX第5頁 2021/3/10 算法的定義算法的定義 算法是程序設(shè)計(jì)的核心算法是程序設(shè)計(jì)的核心 算法是在有限步驟內(nèi)求解某一問題所使用的一組定義明確的算法是在有限步驟內(nèi)求解某一問題所使用的一組定義明確的 規(guī)則。通俗點(diǎn)說,就是計(jì)算機(jī)規(guī)則。通俗點(diǎn)說,就是計(jì)算機(jī)解題的過程解題的過程( (計(jì)算的方法計(jì)算的方法) )。在。在 這個(gè)過程中,無論是形成解題思路這
4、個(gè)過程中,無論是形成解題思路( (推理實(shí)現(xiàn)的算法推理實(shí)現(xiàn)的算法) )還是編還是編 寫程序?qū)懗绦? (操作實(shí)現(xiàn)的算法操作實(shí)現(xiàn)的算法) ),都是在實(shí)施某種算法。,都是在實(shí)施某種算法。 例:例: n個(gè)數(shù)從大到小進(jìn)行排序。個(gè)數(shù)從大到小進(jìn)行排序。 有多種排序方法有多種排序方法 ,常用的有冒泡排序、選擇排序等。,常用的有冒泡排序、選擇排序等。 講課講課 說課說課 講解:XX第6頁 2021/3/10 2 . 算法的基本特征算法的基本特征 一個(gè)算法應(yīng)該具有以下五個(gè)重要的特征:一個(gè)算法應(yīng)該具有以下五個(gè)重要的特征: n 有窮性有窮性 n 確定性確定性 n 輸入輸入 n 輸出輸出 n 可行性可行性 一個(gè)算法必須保
5、證執(zhí)行有限步之后結(jié)束; 算法的每一步驟必須有確切的定義; 一個(gè)算法有0個(gè)或多個(gè)輸入,以刻畫運(yùn)算對象的初始 情況,所謂0個(gè)輸入是指算法本身定出了初始條件; 一個(gè)算法有一個(gè)或多個(gè)輸出,以反映對輸入數(shù)據(jù)加 工后的結(jié)果。沒有輸出的算法是毫無意義的; 算法原則上能夠精確地運(yùn)行,而且人們用筆和 紙做有限次運(yùn)算后即可完成 擁有足夠的情報(bào)擁有足夠的情報(bào) 講解:XX第7頁 2021/3/10 u 算法與計(jì)算機(jī)程序算法與計(jì)算機(jī)程序 算法算法_是一組邏輯步驟是一組邏輯步驟 程序程序用計(jì)算機(jī)語言描述的算法用計(jì)算機(jī)語言描述的算法 INPUT r S=3.14 * r*r PTINT S 開始開始 輸入輸入R R S=3
6、.14 * R*R 輸出輸出S S 結(jié)束結(jié)束 問題: 輸入園的半徑, 計(jì)算園的面積 一個(gè)算法的表示需要使用一些語言形式。一個(gè)算法的表示需要使用一些語言形式。 傳統(tǒng)的算法傳統(tǒng)的算法-圖形法,如圖形法,如“流程圖流程圖”和和N-S圖圖 目前常用的方法目前常用的方法-使用偽碼描述算法。使用偽碼描述算法。 講解:XX第8頁 2021/3/10 冒泡排序的方法:冒泡排序的方法: 1.1.掃描整個(gè)線性表,逐次對相掃描整個(gè)線性表,逐次對相 鄰的兩個(gè)元素進(jìn)行比較,若為鄰的兩個(gè)元素進(jìn)行比較,若為 逆序,則交換;第一趟掃描的逆序,則交換;第一趟掃描的 結(jié)果使最大的元素排到表的最結(jié)果使最大的元素排到表的最 后后 ;
7、 2.2.除最后一個(gè)元素,對剩余的除最后一個(gè)元素,對剩余的 元素重復(fù)上述過程,將次大的元素重復(fù)上述過程,將次大的 數(shù)排到表的倒數(shù)第二個(gè)位置;數(shù)排到表的倒數(shù)第二個(gè)位置; 3.3.重復(fù)上述過程;重復(fù)上述過程; 對于長度為對于長度為n n的線性表,冒泡排的線性表,冒泡排 序需要對表掃描序需要對表掃描n-1n-1遍。遍。 算法舉例:算法舉例:n個(gè)數(shù)排序個(gè)數(shù)排序 講解:XX第9頁 2021/3/10 4. 算法的兩個(gè)基本要素:算法的兩個(gè)基本要素: n 算術(shù)運(yùn)算算術(shù)運(yùn)算 n 關(guān)系運(yùn)算關(guān)系運(yùn)算 n 邏輯運(yùn)算邏輯運(yùn)算 n 數(shù)據(jù)傳輸數(shù)據(jù)傳輸 n 順序順序 n 選擇選擇 n 循環(huán)循環(huán) u一是對數(shù)據(jù)對象的運(yùn)算和操作
8、; u二是算法的控制結(jié)構(gòu)。 u算法基本設(shè)計(jì)方法:列舉法、歸納法、遞推、遞 歸、減斗遞推技術(shù)、回溯法 講解:XX第10頁 2021/3/10 評價(jià)一個(gè)算法優(yōu)劣的主要標(biāo)準(zhǔn)是算法的執(zhí)行效率和存儲需求:評價(jià)一個(gè)算法優(yōu)劣的主要標(biāo)準(zhǔn)是算法的執(zhí)行效率和存儲需求: n 時(shí)間復(fù)雜度:執(zhí)行這個(gè)算法所需要的時(shí)間復(fù)雜度:執(zhí)行這個(gè)算法所需要的計(jì)算工作量計(jì)算工作量 一般可以用算法在執(zhí)行過程中所需基本運(yùn)算的執(zhí)行次數(shù)來度量計(jì)算工作量一般可以用算法在執(zhí)行過程中所需基本運(yùn)算的執(zhí)行次數(shù)來度量計(jì)算工作量 n 空間復(fù)雜度:執(zhí)行這個(gè)算法所需要的空間復(fù)雜度:執(zhí)行這個(gè)算法所需要的內(nèi)存空間內(nèi)存空間 算法在執(zhí)行過程中臨時(shí)占用的存儲空間算法在執(zhí)行
9、過程中臨時(shí)占用的存儲空間 時(shí)間復(fù)雜度時(shí)間復(fù)雜度它大致等于計(jì)算機(jī)它大致等于計(jì)算機(jī)執(zhí)行一種簡單操作所需的平均時(shí)間執(zhí)行一種簡單操作所需的平均時(shí)間與算法與算法 中進(jìn)行中進(jìn)行簡單操作的次數(shù)的乘積簡單操作的次數(shù)的乘積。 一個(gè)算法在計(jì)算機(jī)存儲器上所占用的存儲空間,包括一個(gè)算法在計(jì)算機(jī)存儲器上所占用的存儲空間,包括存儲算法本身所占用存儲算法本身所占用 的存儲空間的存儲空間、算法中的輸入輸出數(shù)據(jù)所占用的存儲空間算法中的輸入輸出數(shù)據(jù)所占用的存儲空間和和算法在運(yùn)行過程中算法在運(yùn)行過程中 臨時(shí)占用的存儲空間臨時(shí)占用的存儲空間這三個(gè)部分這三個(gè)部分 講解:XX第11頁 2021/3/10 (1) 在計(jì)算機(jī)中,算法是指在計(jì)
10、算機(jī)中,算法是指_。 A. 查詢方法查詢方法 B. 加工方法加工方法 C. 解題方案的準(zhǔn)確而完整的描述解題方案的準(zhǔn)確而完整的描述 D. 排序方法排序方法 (2)下列敘述中正確的是下列敘述中正確的是 (07年年4月月) A)算法的效率只與問題的規(guī)模有關(guān),而與數(shù)據(jù)的存儲結(jié)構(gòu)無關(guān)算法的效率只與問題的規(guī)模有關(guān),而與數(shù)據(jù)的存儲結(jié)構(gòu)無關(guān) B)算法的時(shí)間復(fù)雜度是指執(zhí)行算法所需要的計(jì)算工作量算法的時(shí)間復(fù)雜度是指執(zhí)行算法所需要的計(jì)算工作量 C)數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)是一一對應(yīng)的數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)是一一對應(yīng)的 D)算法的時(shí)間復(fù)雜度與空間復(fù)雜度一定相關(guān)算法的時(shí)間復(fù)雜度與空間復(fù)雜度一定相關(guān) (3)算法的有窮性
11、是指算法的有窮性是指 (08年年4月月) A)算法程序的運(yùn)行時(shí)間是有限的)算法程序的運(yùn)行時(shí)間是有限的 B)算法程序所處理的數(shù)據(jù)量是有限的)算法程序所處理的數(shù)據(jù)量是有限的 C)算法程序的長度是有限的)算法程序的長度是有限的 D)算法只能被有限的用戶使用)算法只能被有限的用戶使用 (c) (B) 算法習(xí)題: (A) 講解:XX第12頁 2021/3/10 (4) 算法的時(shí)問復(fù)雜度是指算法的時(shí)問復(fù)雜度是指 (2010年年3月月) A)算法的執(zhí)行時(shí)間算法的執(zhí)行時(shí)間 B)算法所處理的數(shù)據(jù)量算法所處理的數(shù)據(jù)量 C)算法程序中的語句或指令條數(shù)算法程序中的語句或指令條數(shù) D)算法在執(zhí)行過程中所需要的基本運(yùn)算次
12、數(shù)算法在執(zhí)行過程中所需要的基本運(yùn)算次數(shù) (5) 算法的空間復(fù)雜度是指算法的空間復(fù)雜度是指 (09年年9月月) A)算法在執(zhí)行過程中所需要的計(jì)算機(jī)存儲空間)算法在執(zhí)行過程中所需要的計(jì)算機(jī)存儲空間 B)算法所處理的數(shù)據(jù)量)算法所處理的數(shù)據(jù)量 C)算法程序中的語句或指令條數(shù))算法程序中的語句或指令條數(shù) D)算法在執(zhí)行過程中所需要的臨時(shí)工作單元數(shù))算法在執(zhí)行過程中所需要的臨時(shí)工作單元數(shù) (6) 下列敘述中正確的是下列敘述中正確的是 (06年年9月月) A)一個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度也必定大)一個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度也必定大 B)一個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度必定?。┮?/p>
13、個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度必定小 C)一個(gè)算法的時(shí)間復(fù)雜度大,則其空間復(fù)雜度必定?。┮粋€(gè)算法的時(shí)間復(fù)雜度大,則其空間復(fù)雜度必定小 D)上述三種說法都不對)上述三種說法都不對 (D) 計(jì)算工作量 (A) (D) 講解:XX第13頁 2021/3/10 u 算法的時(shí)間復(fù)雜度是指算法的時(shí)間復(fù)雜度是指 A) 執(zhí)行算法程序所需要的時(shí)間執(zhí)行算法程序所需要的時(shí)間 B) 算法程序的長度算法程序的長度 C) 算法執(zhí)行過程中所需要的基本運(yùn)算次數(shù)算法執(zhí)行過程中所需要的基本運(yùn)算次數(shù) D) 算法程序中的指令條數(shù)算法程序中的指令條數(shù) u 算法的基本特征是可行性、確定性、算法的基本特征是可行性、確定性、 【1】
14、和擁有足夠的情報(bào)。和擁有足夠的情報(bào)。 u 算法的空間復(fù)雜度是指算法的空間復(fù)雜度是指 A) 算法程序的長度算法程序的長度 B) 算法程序中的指令條數(shù)算法程序中的指令條數(shù) C) 算法程序所占的存儲空間算法程序所占的存儲空間 D) 執(zhí)行過程中所需要的存儲空間執(zhí)行過程中所需要的存儲空間 u 在計(jì)算機(jī)中,算法是指在計(jì)算機(jī)中,算法是指 A) 加工方法加工方法B) 解題方案的準(zhǔn)確而完整的描述解題方案的準(zhǔn)確而完整的描述 C) 排序方法排序方法D) 查詢方法查詢方法 例題講解例題講解 有窮性有窮性 講解:XX第14頁 2021/3/10 u算法分析的目的是算法分析的目的是 A) 找出數(shù)據(jù)結(jié)構(gòu)的合理性找出數(shù)據(jù)結(jié)構(gòu)
15、的合理性 B) 找出算法中輸入和輸找出算法中輸入和輸 出之間的關(guān)系出之間的關(guān)系 C) 分析算法的易懂性和可靠性分析算法的易懂性和可靠性 D) 分析算法的效率分析算法的效率 以求改進(jìn)以求改進(jìn) u算法的工作量大小和實(shí)現(xiàn)算法所需的存儲單元多少算法的工作量大小和實(shí)現(xiàn)算法所需的存儲單元多少 分別稱為算法的分別稱為算法的 【1】 。 時(shí)間復(fù)雜度和空間復(fù)雜度時(shí)間復(fù)雜度和空間復(fù)雜度 講解:XX第15頁 2021/3/10 計(jì)算機(jī)在進(jìn)行數(shù)據(jù)處理時(shí),實(shí)際需要處理的數(shù)據(jù)元素一般有計(jì)算機(jī)在進(jìn)行數(shù)據(jù)處理時(shí),實(shí)際需要處理的數(shù)據(jù)元素一般有 很多,而這些大量的數(shù)據(jù)元素都需要存放在計(jì)算機(jī)中,因此,大量很多,而這些大量的數(shù)據(jù)元素
16、都需要存放在計(jì)算機(jī)中,因此,大量 的的數(shù)據(jù)元素在計(jì)算機(jī)中如何組織,以便提高數(shù)據(jù)處理的效率,并且數(shù)據(jù)元素在計(jì)算機(jī)中如何組織,以便提高數(shù)據(jù)處理的效率,并且 節(jié)省計(jì)算機(jī)的存儲空間,節(jié)省計(jì)算機(jī)的存儲空間,這是進(jìn)行數(shù)據(jù)處理的關(guān)鍵問題。這是進(jìn)行數(shù)據(jù)處理的關(guān)鍵問題。 程序程序=算法算法+數(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)是指相互有關(guān)聯(lián)的數(shù)據(jù)元素的集合。 一般來說,人們不會同時(shí)處理特征完全不同且互相之間沒有任何關(guān)系 的各類數(shù)據(jù)元素,對于具有不同特征的數(shù)據(jù)元素總是分別進(jìn)行處理。 一般情況下,在具有相同特征的數(shù)據(jù)元素集合中,各個(gè)數(shù)據(jù)一般情況下,在具有相同特征的數(shù)據(jù)元素集合中,各個(gè)數(shù)
17、據(jù) 元素之間存在有某種關(guān)系(即聯(lián)系),這種關(guān)系反映了該集元素之間存在有某種關(guān)系(即聯(lián)系),這種關(guān)系反映了該集 合中的數(shù)據(jù)元素所固有的一種結(jié)構(gòu)。合中的數(shù)據(jù)元素所固有的一種結(jié)構(gòu)。 超市的物品如何超市的物品如何 存放才好找且節(jié)存放才好找且節(jié) 省空間呢?省空間呢? 講解:XX第16頁 2021/3/10 二二. 數(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)是指相互有關(guān)聯(lián)的數(shù)據(jù)元素的集合。 數(shù)據(jù)結(jié)構(gòu)是研究數(shù)據(jù)和數(shù)據(jù)之間關(guān)系的一門學(xué)科,它數(shù)據(jù)結(jié)構(gòu)是研究數(shù)據(jù)和數(shù)據(jù)之間關(guān)系的一門學(xué)科,它 包括三個(gè)方面。包括三個(gè)方面。 (1)數(shù)據(jù)集合中各數(shù)據(jù)元素之間所固有的邏輯關(guān)系,)數(shù)據(jù)集合中各數(shù)據(jù)元素
18、之間所固有的邏輯關(guān)系, 即數(shù)據(jù)的邏輯結(jié)構(gòu);即數(shù)據(jù)的邏輯結(jié)構(gòu); (2)在對數(shù)據(jù)進(jìn)行處理時(shí),各數(shù)據(jù)元素在計(jì)算機(jī)中)在對數(shù)據(jù)進(jìn)行處理時(shí),各數(shù)據(jù)元素在計(jì)算機(jī)中 的存儲關(guān)系,即數(shù)據(jù)的存儲結(jié)構(gòu);的存儲關(guān)系,即數(shù)據(jù)的存儲結(jié)構(gòu); (3)對各種數(shù)據(jù)結(jié)構(gòu)進(jìn)行的運(yùn)算。)對各種數(shù)據(jù)結(jié)構(gòu)進(jìn)行的運(yùn)算。 講解:XX第17頁 2021/3/10 u 1. 邏輯結(jié)構(gòu)邏輯結(jié)構(gòu) 數(shù)據(jù)的邏輯結(jié)構(gòu)是指反映數(shù)據(jù)元素之間邏輯關(guān)系的數(shù)據(jù)結(jié)數(shù)據(jù)的邏輯結(jié)構(gòu)是指反映數(shù)據(jù)元素之間邏輯關(guān)系的數(shù)據(jù)結(jié) 構(gòu)。構(gòu)。 數(shù)據(jù)的邏輯結(jié)構(gòu)包含:數(shù)據(jù)的邏輯結(jié)構(gòu)包含: (1)表示數(shù)據(jù)元素的信息;)表示數(shù)據(jù)元素的信息; (2)表示各數(shù)據(jù)元素之間的前后件關(guān)系。)表示各數(shù)據(jù)元
19、素之間的前后件關(guān)系。 例:例: 1. 一年四季的數(shù)據(jù)結(jié)構(gòu)一年四季的數(shù)據(jù)結(jié)構(gòu) B=(D,R) D=春,夏,秋,冬春,夏,秋,冬 R=(春,夏春,夏) ,(夏,秋夏,秋),(秋,冬秋,冬) 2. 家庭成員的數(shù)據(jù)結(jié)構(gòu)家庭成員的數(shù)據(jù)結(jié)構(gòu) B=(D,R) D=父親,兒子,女兒父親,兒子,女兒 R=(父親,兒子父親,兒子) ,(父親,女兒父親,女兒) 春夏秋冬 數(shù)據(jù)結(jié)構(gòu)的圖形表示數(shù)據(jù)結(jié)構(gòu)的圖形表示 父親 兒子女兒 講解:XX第18頁 2021/3/10 u常見的常見的邏輯結(jié)構(gòu)邏輯結(jié)構(gòu)有:有: 線性結(jié)構(gòu)、樹形結(jié)構(gòu)和圖形結(jié)構(gòu)。線性結(jié)構(gòu)、樹形結(jié)構(gòu)和圖形結(jié)構(gòu)。 線性結(jié)構(gòu)線性結(jié)構(gòu) 樹形結(jié)構(gòu)樹形結(jié)構(gòu) 圖形結(jié)構(gòu)圖形結(jié)構(gòu)
20、 u 線性結(jié)構(gòu)線性結(jié)構(gòu) 結(jié)構(gòu)中的每個(gè)元素之間存在一個(gè)對一個(gè)的關(guān)系;結(jié)構(gòu)中的每個(gè)元素之間存在一個(gè)對一個(gè)的關(guān)系; u 樹形結(jié)構(gòu)樹形結(jié)構(gòu) 結(jié)構(gòu)中的每個(gè)元素之間存在一個(gè)對多個(gè)的關(guān)系;結(jié)構(gòu)中的每個(gè)元素之間存在一個(gè)對多個(gè)的關(guān)系; u 圖形結(jié)構(gòu)或網(wǎng)狀結(jié)構(gòu)圖形結(jié)構(gòu)或網(wǎng)狀結(jié)構(gòu) 結(jié)構(gòu)中的每個(gè)元素之間存在多個(gè)對多個(gè)的關(guān)系。結(jié)構(gòu)中的每個(gè)元素之間存在多個(gè)對多個(gè)的關(guān)系。 其中,其中,樹形結(jié)構(gòu)和圖形結(jié)構(gòu)統(tǒng)稱為非線形結(jié)構(gòu)樹形結(jié)構(gòu)和圖形結(jié)構(gòu)統(tǒng)稱為非線形結(jié)構(gòu)。數(shù)據(jù)的邏輯結(jié)構(gòu)可以。數(shù)據(jù)的邏輯結(jié)構(gòu)可以 用二元關(guān)系表示,也可以直觀地用圖形來表示。用二元關(guān)系表示,也可以直觀地用圖形來表示。 講解:XX第19頁 2021/3/10 u 2
21、. 存儲結(jié)構(gòu)(物理結(jié)構(gòu)存儲結(jié)構(gòu)(物理結(jié)構(gòu)) 計(jì)算機(jī)在實(shí)際進(jìn)行數(shù)據(jù)處理時(shí),被處理的各數(shù)據(jù)元素總是被存放在計(jì)計(jì)算機(jī)在實(shí)際進(jìn)行數(shù)據(jù)處理時(shí),被處理的各數(shù)據(jù)元素總是被存放在計(jì) 算機(jī)的存儲空間中,并且,各數(shù)據(jù)元素在計(jì)算機(jī)存儲空間中的位置與算機(jī)的存儲空間中,并且,各數(shù)據(jù)元素在計(jì)算機(jī)存儲空間中的位置與 它們的邏輯關(guān)系不一定是相同的,而且一般也不可能相同。它們的邏輯關(guān)系不一定是相同的,而且一般也不可能相同。 如:如:一年四季 家庭成員 計(jì)算機(jī)存儲空間怎樣存放? 存儲結(jié)構(gòu)指數(shù)據(jù)結(jié)構(gòu)在計(jì)算機(jī)存儲空間中的具體實(shí)現(xiàn)。存儲結(jié)構(gòu)指數(shù)據(jù)結(jié)構(gòu)在計(jì)算機(jī)存儲空間中的具體實(shí)現(xiàn)。 常見的存儲結(jié)構(gòu)有:常見的存儲結(jié)構(gòu)有: n 順序存儲結(jié)構(gòu)
22、順序存儲結(jié)構(gòu) n 鏈?zhǔn)酱鎯Y(jié)構(gòu)鏈?zhǔn)酱鎯Y(jié)構(gòu) n 索引存儲結(jié)構(gòu)索引存儲結(jié)構(gòu) 只抽象地反映數(shù)據(jù)元素之間的關(guān)系的結(jié)構(gòu),只抽象地反映數(shù)據(jù)元素之間的關(guān)系的結(jié)構(gòu), 而不管其存儲方式的數(shù)據(jù)結(jié)構(gòu)稱為邏輯結(jié)而不管其存儲方式的數(shù)據(jù)結(jié)構(gòu)稱為邏輯結(jié) 構(gòu)。構(gòu)。 一種一種數(shù)據(jù)結(jié)構(gòu)可以根據(jù)需要表示成一種或數(shù)據(jù)結(jié)構(gòu)可以根據(jù)需要表示成一種或 多種存儲結(jié)構(gòu)多種存儲結(jié)構(gòu)。 講解:XX第20頁 2021/3/10 u 3. 數(shù)據(jù)的運(yùn)算數(shù)據(jù)的運(yùn)算 n 檢索檢索 n 插入插入 n 刪除刪除 n 更新更新 n 排序排序 通常,一個(gè)數(shù)據(jù)結(jié)構(gòu)中的元素結(jié)點(diǎn)可能是動態(tài)變化的。根據(jù)需要通常,一個(gè)數(shù)據(jù)結(jié)構(gòu)中的元素結(jié)點(diǎn)可能是動態(tài)變化的。根據(jù)需要 或在處
23、理過程中,可以在一個(gè)數(shù)據(jù)結(jié)構(gòu)中增加一個(gè)新結(jié)點(diǎn)(插入運(yùn)或在處理過程中,可以在一個(gè)數(shù)據(jù)結(jié)構(gòu)中增加一個(gè)新結(jié)點(diǎn)(插入運(yùn) 算),也可以刪除某個(gè)結(jié)點(diǎn)(刪除運(yùn)算),除此之外,對數(shù)據(jù)結(jié)構(gòu)算),也可以刪除某個(gè)結(jié)點(diǎn)(刪除運(yùn)算),除此之外,對數(shù)據(jù)結(jié)構(gòu) 的運(yùn)算還有查找、分類、合并、分解、復(fù)制和修改。的運(yùn)算還有查找、分類、合并、分解、復(fù)制和修改。 在對數(shù)據(jù)結(jié)構(gòu)的處理過程中,不僅數(shù)據(jù)結(jié)構(gòu)中結(jié)點(diǎn)的個(gè)數(shù)在動態(tài)在對數(shù)據(jù)結(jié)構(gòu)的處理過程中,不僅數(shù)據(jù)結(jié)構(gòu)中結(jié)點(diǎn)的個(gè)數(shù)在動態(tài) 變化,而且,各數(shù)據(jù)元素之間的關(guān)系也有可能在動態(tài)地變化。變化,而且,各數(shù)據(jù)元素之間的關(guān)系也有可能在動態(tài)地變化。如: 無序表變有序表 數(shù)據(jù)結(jié)構(gòu)是研究數(shù)據(jù)和數(shù)據(jù)之?dāng)?shù)據(jù)結(jié)
24、構(gòu)是研究數(shù)據(jù)和數(shù)據(jù)之 間關(guān)系的一門學(xué)科,研究以下三間關(guān)系的一門學(xué)科,研究以下三 方面內(nèi)容:方面內(nèi)容: n 數(shù)據(jù)的邏輯結(jié)構(gòu)數(shù)據(jù)的邏輯結(jié)構(gòu) n 數(shù)據(jù)的存儲結(jié)構(gòu)數(shù)據(jù)的存儲結(jié)構(gòu) n 數(shù)據(jù)的運(yùn)算數(shù)據(jù)的運(yùn)算 父親 兒子女兒 2021/3/10年11月21 日講解:XX 第第21 21|92|92頁頁 常見的數(shù)據(jù)結(jié)構(gòu)常見的數(shù)據(jù)結(jié)構(gòu) u 數(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):一個(gè)非空的數(shù)據(jù)結(jié)構(gòu)若滿足下面的兩個(gè)條件,則這種數(shù)據(jù)一個(gè)非空的數(shù)據(jù)結(jié)構(gòu)若滿足下面的兩個(gè)條件,則這種數(shù)據(jù) 結(jié)構(gòu)即為結(jié)構(gòu)即為。 有且僅有一個(gè)根結(jié)點(diǎn);有且僅有一個(gè)根結(jié)點(diǎn); 除第一個(gè)結(jié)點(diǎn)外,每一個(gè)結(jié)點(diǎn)
25、最多有一個(gè)前件;除第一個(gè)結(jié)點(diǎn)外,每一個(gè)結(jié)點(diǎn)最多有一個(gè)前件; 除最后一個(gè)結(jié)點(diǎn)外,每一個(gè)結(jié)點(diǎn)最多有一個(gè)后件。除最后一個(gè)結(jié)點(diǎn)外,每一個(gè)結(jié)點(diǎn)最多有一個(gè)后件。 常見的線性結(jié)構(gòu)有:常見的線性結(jié)構(gòu)有: 2021/3/10年11月21 日講解:XX 第第2222|92|92頁頁 a1a2a5a3a4HEAD 319510 線性鏈表的邏輯狀態(tài)線性鏈表的邏輯狀態(tài) 常見的非線性結(jié)構(gòu)有樹、常見的非線性結(jié)構(gòu)有樹、 非線性結(jié)構(gòu)一個(gè)數(shù)據(jù)結(jié)構(gòu)不是線性結(jié)構(gòu)。一個(gè)數(shù)據(jù)結(jié)構(gòu)不是線性結(jié)構(gòu)。 講解:XX第23頁 2021/3/10 線性表是由線性表是由n(n0)個(gè)數(shù)據(jù)元素)個(gè)數(shù)據(jù)元素 a1,a2,ai,an組成的一個(gè)有限序列。組成的一
26、個(gè)有限序列。 春春 夏夏 秋秋 冬冬 記錄記錄1 02011001 張三張三 男男 記錄記錄2 02011003 李四李四 女女 記錄記錄3 記錄記錄4 講解:XX第24頁 2021/3/10 特點(diǎn):特點(diǎn): 順序存儲結(jié)構(gòu)把順序存儲結(jié)構(gòu)把邏輯上相邏輯上相 鄰鄰的數(shù)據(jù)元素存儲在的數(shù)據(jù)元素存儲在物理上相鄰物理上相鄰 的存儲單元里,順序存儲結(jié)構(gòu)的存儲單元里,順序存儲結(jié)構(gòu)只只 存儲結(jié)點(diǎn)的值存儲結(jié)點(diǎn)的值,不存儲結(jié)點(diǎn)間的,不存儲結(jié)點(diǎn)間的 關(guān)系,結(jié)點(diǎn)間的關(guān)系由存儲單元關(guān)系,結(jié)點(diǎn)間的關(guān)系由存儲單元 的鄰接關(guān)系來體現(xiàn)。的鄰接關(guān)系來體現(xiàn)。 a1 a2 ai an 存儲地址存儲地址 2000 2004 2000+4*
27、(i-1) 2000+4*(n-1) 占占4個(gè)字節(jié)個(gè)字節(jié) 第i個(gè)數(shù)的地址第一個(gè)數(shù)的地址L為該類型數(shù)所占的字節(jié) 線性表的存儲結(jié)構(gòu)有兩種:線性表的存儲結(jié)構(gòu)有兩種: u 順序存儲結(jié)構(gòu)順序存儲結(jié)構(gòu) u 鏈?zhǔn)酱鎯Y(jié)構(gòu)鏈?zhǔn)酱鎯Y(jié)構(gòu) 講解:XX第25頁 2021/3/10 u 順序表的插入運(yùn)算順序表的插入運(yùn)算 u 順序表的刪除運(yùn)算順序表的刪除運(yùn)算 在線性表順序存儲情況下,要插入或刪除一個(gè)元在線性表順序存儲情況下,要插入或刪除一個(gè)元 素,都會由于數(shù)據(jù)元素的移動而消耗大量的處理時(shí)間,素,都會由于數(shù)據(jù)元素的移動而消耗大量的處理時(shí)間, 所以這種存儲方式對于小線性表或其中數(shù)據(jù)元素不經(jīng)所以這種存儲方式對于小線性表或其中
28、數(shù)據(jù)元素不經(jīng) 常變動的線性表是合適的。常變動的線性表是合適的。 線性表的順序存儲結(jié)構(gòu)稱為順序表。線性表的順序存儲結(jié)構(gòu)稱為順序表。 講解:XX第26頁 2021/3/10 插入運(yùn)算插入運(yùn)算 ai-1.a2a1 alength ai+1ai x ai-1.a2a1 alength ai+1ai X 插入算法的分析插入算法的分析: : 假設(shè)線性表中含有假設(shè)線性表中含有n n個(gè)數(shù)據(jù)元素,在進(jìn)行插入操作時(shí),若假個(gè)數(shù)據(jù)元素,在進(jìn)行插入操作時(shí),若假 定在定在n+1n+1個(gè)位置上插入元素的可能性均等,則平均移動元素的個(gè)數(shù)為:個(gè)位置上插入元素的可能性均等,則平均移動元素的個(gè)數(shù)為: 1n 1i is 2 n 1)
29、i(n 1n 1 E 講解:XX第27頁 2021/3/10 刪除運(yùn)算刪除運(yùn)算 ai-1.a2a1 alength ai+1ai ai-1.a2a1 alength ai+1 刪除算法的分析刪除算法的分析: : 在進(jìn)行刪除操作時(shí),若假定刪除每個(gè)元素的可能性均等,則在進(jìn)行刪除操作時(shí),若假定刪除每個(gè)元素的可能性均等,則 平均移動元素的個(gè)數(shù)為:平均移動元素的個(gè)數(shù)為: 總結(jié)總結(jié): : 順序存儲結(jié)構(gòu)表示的線性表,在做插入或刪除操作時(shí),平均需要移順序存儲結(jié)構(gòu)表示的線性表,在做插入或刪除操作時(shí),平均需要移 動大約一半的數(shù)據(jù)元素。當(dāng)線性表的數(shù)據(jù)元素量較大,并且經(jīng)常要對其做動大約一半的數(shù)據(jù)元素。當(dāng)線性表的數(shù)據(jù)元
30、素量較大,并且經(jīng)常要對其做 插入或刪除操作時(shí),這一點(diǎn)需要值得考慮。插入或刪除操作時(shí),這一點(diǎn)需要值得考慮。 n 1i dl 2 1n i)(n n 1 E 講解:XX第28頁 2021/3/10 u 線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)稱為線性鏈表。線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)稱為線性鏈表。 u 鏈?zhǔn)酱鎯Y(jié)構(gòu)不要求邏輯上相鄰的數(shù)據(jù)元素物理位置也相鄰,鏈?zhǔn)酱鎯Y(jié)構(gòu)不要求邏輯上相鄰的數(shù)據(jù)元素物理位置也相鄰, 而且各數(shù)據(jù)元素的存儲順序也是任意的。各數(shù)據(jù)元素的先后而且各數(shù)據(jù)元素的存儲順序也是任意的。各數(shù)據(jù)元素的先后 關(guān)系是由各結(jié)點(diǎn)的指針域指示。關(guān)系是由各結(jié)點(diǎn)的指針域指示。 u 鏈?zhǔn)酱鎯Y(jié)構(gòu)的每一個(gè)存儲結(jié)點(diǎn)不僅存儲結(jié)點(diǎn)的值,而且
31、存鏈?zhǔn)酱鎯Y(jié)構(gòu)的每一個(gè)存儲結(jié)點(diǎn)不僅存儲結(jié)點(diǎn)的值,而且存 儲結(jié)點(diǎn)之間的關(guān)系:儲結(jié)點(diǎn)之間的關(guān)系: u 鏈?zhǔn)酱鎯Y(jié)構(gòu)分為單鏈表、雙向鏈表、循環(huán)鏈表鏈?zhǔn)酱鎯Y(jié)構(gòu)分為單鏈表、雙向鏈表、循環(huán)鏈表 u 線性鏈表不能隨機(jī)存取線性鏈表不能隨機(jī)存取 數(shù)據(jù)域數(shù)據(jù)域指針域指針域 講解:XX第29頁 2021/3/10 設(shè)線性表為設(shè)線性表為(a1,a2,a3,a4,a5) 1a29 2 3a11 4 5a410 6 7 8 9a35 10a50 HEAD 3 a1a2a5a3a4HEAD 319510 線性鏈表的邏輯狀態(tài)線性鏈表的邏輯狀態(tài) 線性鏈表線性鏈表的物理狀態(tài)的物理狀態(tài) 1 a1 2 a2 3 a3 4 a4 5
32、 a5 6 7 注意:1 2 3 此類編號不 代表所在的 地址單元的 地址編碼 線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu) 及其插入與刪除操作及其插入與刪除操作 講解:XX第30頁 2021/3/10 zhaoqiansun lizhouwu zhengwang / H 存儲地址存儲地址數(shù)據(jù)數(shù)據(jù) 1 7 13 19 25 31 37 43 li qian sun wang wu zhao zheng zhou 指針指針 43 13 1 null 37 7 19 25 31 頭指針頭指針 單鏈表單鏈表 講解:XX第31頁 2021/3/10 單鏈表的插入運(yùn)算單鏈表的插入運(yùn)算 在在P所指向的結(jié)點(diǎn)之后
33、插入所指向的結(jié)點(diǎn)之后插入 新的結(jié)點(diǎn)新的結(jié)點(diǎn) 單鏈表單鏈表刪除運(yùn)算刪除運(yùn)算 P ba x S b aP La aian ai-1ai+1 要求要求:刪除結(jié)點(diǎn)刪除結(jié)點(diǎn)ai。 講解:XX第32頁 2021/3/10 循環(huán)鏈表循環(huán)鏈表: 首尾相接的鏈表。首尾相接的鏈表。 將最后一個(gè)結(jié)點(diǎn)的空指針改為指向頭結(jié)點(diǎn),從任一結(jié)點(diǎn)出發(fā)均可找到其將最后一個(gè)結(jié)點(diǎn)的空指針改為指向頭結(jié)點(diǎn),從任一結(jié)點(diǎn)出發(fā)均可找到其 它結(jié)點(diǎn)它結(jié)點(diǎn)。 a1 a2ana3 L . 帶頭結(jié)點(diǎn)的單鏈表帶頭結(jié)點(diǎn)的單鏈表 a1a2ana3 L . 循環(huán)單鏈表循環(huán)單鏈表 特點(diǎn)特點(diǎn): 可以從任何一個(gè)結(jié)點(diǎn)開始訪問鏈表的所有結(jié)點(diǎn)可以從任何一個(gè)結(jié)點(diǎn)開始訪問鏈表的
34、所有結(jié)點(diǎn). 講解:XX第33頁 2021/3/10 雙向鏈表的存儲結(jié)構(gòu)雙向鏈表的存儲結(jié)構(gòu) 在每個(gè)結(jié)點(diǎn)中設(shè)置兩個(gè)指針,一個(gè)指向后繼,一個(gè)指向前驅(qū)??芍苯釉诿總€(gè)結(jié)點(diǎn)中設(shè)置兩個(gè)指針,一個(gè)指向后繼,一個(gè)指向前驅(qū)??芍苯?確定一個(gè)結(jié)點(diǎn)的前驅(qū)和后繼結(jié)點(diǎn)??商岣咝?。確定一個(gè)結(jié)點(diǎn)的前驅(qū)和后繼結(jié)點(diǎn)。可提高效率。 HEAD 31510 a2 a3 a4 a1 提問:單向鏈表的缺點(diǎn)是什么? 提示:如何尋找結(jié)點(diǎn)的直接前趨。 雙向鏈表可以克服單鏈表的單向性的缺點(diǎn)。 在雙向鏈表的結(jié)點(diǎn)中有兩個(gè)指針域,其一指向直接后繼,另一在雙向鏈表的結(jié)點(diǎn)中有兩個(gè)指針域,其一指向直接后繼,另一 指向直接前趨。指向直接前趨。 雙向循環(huán)鏈表雙
35、向循環(huán)鏈表 講解:XX第34頁 2021/3/10 u 線性表的應(yīng)用:應(yīng)用最廣的數(shù)據(jù)結(jié)構(gòu)。線性表的應(yīng)用:應(yīng)用最廣的數(shù)據(jù)結(jié)構(gòu)。 u .高級語言中的數(shù)組;高級語言中的數(shù)組; u 計(jì)算機(jī)的文件系統(tǒng);計(jì)算機(jī)的文件系統(tǒng); u 計(jì)算機(jī)的目錄系統(tǒng);計(jì)算機(jī)的目錄系統(tǒng); u 電話號碼查詢系統(tǒng)(可采用順序表或單鏈表結(jié)電話號碼查詢系統(tǒng)(可采用順序表或單鏈表結(jié) 構(gòu)構(gòu));); u 各種事務(wù)處理(各種事務(wù)處理(可采用順序表或單鏈表結(jié)構(gòu)可采用順序表或單鏈表結(jié)構(gòu)); 講解:XX第35頁 2021/3/10 棧和隊(duì)列棧和隊(duì)列是兩種特殊的線性表,它們是運(yùn)算時(shí)是兩種特殊的線性表,它們是運(yùn)算時(shí) 要受到某些限制的線性表,故也稱為要受到
36、某些限制的線性表,故也稱為限定性限定性 的數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)結(jié)構(gòu)。 講解:XX第36頁 2021/3/10 1 .棧棧 棧棧是限定僅在表尾進(jìn)行插入或刪除操作的線性表。是限定僅在表尾進(jìn)行插入或刪除操作的線性表。 棧頂棧頂表尾。表尾。 棧底棧底表頭。表頭。 空??諚2缓氐目毡?。不含元素的空表。 a1 a2 an 棧底棧底 棧頂棧頂 進(jìn)棧進(jìn)棧 出棧出棧 棧棧s=(a1,a2,an) 后進(jìn)先出或先后進(jìn)先出或先 進(jìn)后出(進(jìn)后出(LIFO) 講解:XX第37頁 2021/3/10 u棧的物理存儲結(jié)構(gòu)可以用順序結(jié)構(gòu),也可以用鏈表?xiàng)5奈锢泶鎯Y(jié)構(gòu)可以用順序結(jié)構(gòu),也可以用鏈表 結(jié)構(gòu)。結(jié)構(gòu)。 u下面討論順序存儲結(jié)
37、構(gòu)中棧元素的插入和刪除運(yùn)算。下面討論順序存儲結(jié)構(gòu)中棧元素的插入和刪除運(yùn)算。 n 順序棧的進(jìn)棧和出棧運(yùn)算順序棧的進(jìn)棧和出棧運(yùn)算 n棧的基本運(yùn)算有三種:入棧、退棧和讀棧頂元素棧的基本運(yùn)算有三種:入棧、退棧和讀棧頂元素 在順序棧中插入和刪除運(yùn)算不需要在順序棧中插入和刪除運(yùn)算不需要 移動表中其他數(shù)據(jù)元素移動表中其他數(shù)據(jù)元素。 講解:XX第38頁 2021/3/10 2. 棧的順序存儲結(jié)構(gòu)及其基本運(yùn)算棧的順序存儲結(jié)構(gòu)及其基本運(yùn)算 a2 a1 a1 a2 top 用順序存儲結(jié)構(gòu)表示的棧用順序存儲結(jié)構(gòu)表示的棧: 順序棧用一組連續(xù)的存儲單元存放自棧底到棧頂?shù)捻樞驐S靡唤M連續(xù)的存儲單元存放自棧底到棧頂?shù)?數(shù)據(jù)元
38、素,一般用一維數(shù)組表示,設(shè)置一個(gè)簡單變量數(shù)據(jù)元素,一般用一維數(shù)組表示,設(shè)置一個(gè)簡單變量top指示指示 棧頂位置,稱為棧頂位置,稱為針棧頂指針棧頂指,它始終指向待插入元素的位置。它始終指向待插入元素的位置。 基本運(yùn)算:基本運(yùn)算: 壓(進(jìn))棧:壓(進(jìn))棧:PUSH 出棧:出棧:POP 讀棧頂元素:讀棧頂元素:gettop 講解:XX第39頁 2021/3/10 例子:例子: top base E D C B A top base C B A base top A base top 空桟:空桟:topbase 非空桟:非空桟:top始終在桟頂元素的后一個(gè)位置始終在桟頂元素的后一個(gè)位置 桟的元素個(gè)數(shù):
39、桟的元素個(gè)數(shù): top-base 上溢上溢 下溢下溢 講解:XX第40頁 2021/3/10 2 2、隊(duì)列、隊(duì)列 定義:一種特殊的線性結(jié)構(gòu),限定只能在表的一端進(jìn)行插入,定義:一種特殊的線性結(jié)構(gòu),限定只能在表的一端進(jìn)行插入, 在在 表的另一端進(jìn)行刪除的線性表表的另一端進(jìn)行刪除的線性表 。此種結(jié)構(gòu)稱為先進(jìn)先出。此種結(jié)構(gòu)稱為先進(jìn)先出 (FIFO)表。)表。 a1 , a2 , a3 , a4 , an-1 , an 隊(duì)隊(duì) 列列 示示 意意 圖圖 隊(duì)頭隊(duì)頭 隊(duì)尾隊(duì)尾 先進(jìn)先出先進(jìn)先出 后進(jìn)后出后進(jìn)后出 (LIFO) 講解:XX第41頁 2021/3/10 e3 e4 (c) e1,e2出隊(duì),出隊(duì),e4
40、入隊(duì)入隊(duì) 隊(duì)隊(duì) 滿滿 rear =3 front e1 e2 e3 (b) rear front (b)e1,e2,e3入隊(duì)入隊(duì) 隊(duì)列的順序存儲結(jié)構(gòu)及其基本運(yùn)算隊(duì)列的順序存儲結(jié)構(gòu)及其基本運(yùn)算 3 2 1 0 (a) rear=front=-1(隊(duì)空)隊(duì)空) rear front 空隊(duì)列空隊(duì)列: 非空隊(duì)列非空隊(duì)列: 隊(duì)列元素個(gè)數(shù)隊(duì)列元素個(gè)數(shù): rear=front=-1 front始終指向隊(duì)頭元素前一個(gè)位置,而始終指向隊(duì)頭元素前一個(gè)位置,而rear始終指向隊(duì)始終指向隊(duì) 尾元素的位置尾元素的位置 rear-front 講解:XX第42頁 2021/3/10 隊(duì)列的物理存儲結(jié)構(gòu)可以用順序結(jié)構(gòu),也可以
41、用鏈?zhǔn)浇Y(jié)隊(duì)列的物理存儲結(jié)構(gòu)可以用順序結(jié)構(gòu),也可以用鏈?zhǔn)浇Y(jié) 構(gòu)。構(gòu)。 u 順序隊(duì)列的運(yùn)算順序隊(duì)列的運(yùn)算 棧有三種操作:棧有三種操作: 入棧出棧讀棧頂元素入棧出棧讀棧頂元素 隊(duì)列有三種操作:入隊(duì)出隊(duì)讀隊(duì)首元素隊(duì)列有三種操作:入隊(duì)出隊(duì)讀隊(duì)首元素 例:有入棧元素序列:例:有入棧元素序列:ABCD,求可能的出棧序列,求可能的出棧序列 如是隊(duì)列又是什么情況呢?如是隊(duì)列又是什么情況呢? 講解:XX第43頁 2021/3/10 把隊(duì)列的存儲空間在邏輯上看作一個(gè)環(huán),當(dāng)把隊(duì)列的存儲空間在邏輯上看作一個(gè)環(huán),當(dāng)R指向存儲空指向存儲空 間的末端后,就把它重新置于始端。間的末端后,就把它重新置于始端。 u 循環(huán)隊(duì)列的運(yùn)算
42、循環(huán)隊(duì)列的運(yùn)算 隊(duì)列中進(jìn)行插入的一端稱做隊(duì)尾隊(duì)列中進(jìn)行插入的一端稱做隊(duì)尾(rear),進(jìn)行刪除的一端進(jìn)行刪除的一端 稱做隊(duì)首稱做隊(duì)首(front)。 習(xí)題:數(shù)據(jù)結(jié)構(gòu)分為邏輯結(jié)構(gòu)和存儲結(jié)構(gòu),循環(huán)隊(duì)習(xí)題:數(shù)據(jù)結(jié)構(gòu)分為邏輯結(jié)構(gòu)和存儲結(jié)構(gòu),循環(huán)隊(duì) 列屬于列屬于【 】結(jié)構(gòu)。(結(jié)構(gòu)。(2005年年9月)月) 答案:存儲結(jié)構(gòu)。答案:存儲結(jié)構(gòu)。 講解:XX第44頁 2021/3/10 frontrear Maxsize-1 0 1 e3 e4 rear =3 front 講解:XX第45頁 2021/3/10 00 1 2 3 4 5 front A B C D E F rear 上溢上溢 00 1 2 3
43、4 5 front rear 下溢下溢 front=rear 隊(duì)滿隊(duì)滿 front=rear 隊(duì)空隊(duì)空 講解:XX第46頁 2021/3/10 數(shù)據(jù)存儲結(jié)構(gòu)方面的考題數(shù)據(jù)存儲結(jié)構(gòu)方面的考題 1:數(shù)據(jù)的存儲結(jié)構(gòu)是指:數(shù)據(jù)的存儲結(jié)構(gòu)是指 (2005年年4月)月) A) 存儲在外存中的數(shù)據(jù)存儲在外存中的數(shù)據(jù) B) 數(shù)據(jù)所占的存儲空間量數(shù)據(jù)所占的存儲空間量 C) 數(shù)據(jù)在計(jì)算機(jī)中的順序存儲方式數(shù)據(jù)在計(jì)算機(jī)中的順序存儲方式 D) 數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示 2. 下列敘述中正確的是下列敘述中正確的是 (2009年年3月)月) A)棧是)棧是“先進(jìn)先出先進(jìn)先出”的線性表的線
44、性表 B)隊(duì)列是)隊(duì)列是“先進(jìn)后出先進(jìn)后出”的線性表的線性表 C)循環(huán)隊(duì)列是非線性結(jié)構(gòu))循環(huán)隊(duì)列是非線性結(jié)構(gòu) D)有序線性表既可以采用順序存儲結(jié)構(gòu),也可以采用鏈?zhǔn)酱鎯Y(jié)構(gòu))有序線性表既可以采用順序存儲結(jié)構(gòu),也可以采用鏈?zhǔn)酱鎯Y(jié)構(gòu) 3. 數(shù)據(jù)結(jié)構(gòu)分為線性結(jié)構(gòu)和非線性結(jié)構(gòu),帶鏈的隊(duì)列屬于數(shù)據(jù)結(jié)構(gòu)分為線性結(jié)構(gòu)和非線性結(jié)構(gòu),帶鏈的隊(duì)列屬于 。 4. 下列數(shù)據(jù)結(jié)構(gòu)中,屬于非線性結(jié)構(gòu)的是下列數(shù)據(jù)結(jié)構(gòu)中,屬于非線性結(jié)構(gòu)的是 A)循環(huán)隊(duì)列)循環(huán)隊(duì)列 B) 帶鏈隊(duì)列帶鏈隊(duì)列 C) 二叉樹二叉樹 D)帶鏈棧)帶鏈棧 答案:答案:D。 答案:答案:D。 答案:線性結(jié)構(gòu)。答案:線性結(jié)構(gòu)。 答案:答案:c 講解:XX第
45、47頁 2021/3/10 5。下列敘述中正確的是(下列敘述中正確的是( )。)。 (2008年年9月)月) A)順序存儲結(jié)構(gòu)的存儲一定是連續(xù)的,鏈?zhǔn)酱鎯Y(jié)構(gòu)的存儲空)順序存儲結(jié)構(gòu)的存儲一定是連續(xù)的,鏈?zhǔn)酱鎯Y(jié)構(gòu)的存儲空 間不一定是連續(xù)的間不一定是連續(xù)的 B)順序存儲結(jié)構(gòu)只針對線性結(jié)構(gòu),鏈?zhǔn)酱鎯Y(jié)構(gòu)只針對非線性)順序存儲結(jié)構(gòu)只針對線性結(jié)構(gòu),鏈?zhǔn)酱鎯Y(jié)構(gòu)只針對非線性 結(jié)構(gòu)結(jié)構(gòu) C)順序存儲結(jié)構(gòu)能存儲有序表,鏈?zhǔn)酱鎯Y(jié)構(gòu)不能存儲有序表)順序存儲結(jié)構(gòu)能存儲有序表,鏈?zhǔn)酱鎯Y(jié)構(gòu)不能存儲有序表 D)鏈?zhǔn)酱鎯Y(jié)構(gòu)比順序存儲結(jié)構(gòu)節(jié)省存儲空間)鏈?zhǔn)酱鎯Y(jié)構(gòu)比順序存儲結(jié)構(gòu)節(jié)省存儲空間 答案:答案:A。 6 6。
46、下列關(guān)于棧的敘述正確的是。下列關(guān)于棧的敘述正確的是 (2008年年4月)月) A A)棧按)棧按“先進(jìn)先出先進(jìn)先出”組織數(shù)據(jù)組織數(shù)據(jù) B)B)棧按棧按“先進(jìn)后出先進(jìn)后出”組織數(shù)據(jù)組織數(shù)據(jù) C C)只能在棧底插入數(shù)據(jù))只能在棧底插入數(shù)據(jù) D D)不能刪除數(shù)據(jù))不能刪除數(shù)據(jù) 答案:答案:B。 7. 一個(gè)隊(duì)列的初始狀態(tài)為空?,F(xiàn)將元素一個(gè)隊(duì)列的初始狀態(tài)為空?,F(xiàn)將元素A,B,C,D,E,F(xiàn),5,4,3, 2,1依次入隊(duì),然后再依次退隊(duì),則元素退隊(duì)的順序?yàn)橐来稳腙?duì),然后再依次退隊(duì),則元素退隊(duì)的順序?yàn)?【1】 。(。(2010 年年3月)月) 答案:答案:A,B,C,D,E,F(xiàn),5,4,3,2,1 講解:X
47、X第48頁 2021/3/10 9. 設(shè)某循環(huán)隊(duì)列的容量為設(shè)某循環(huán)隊(duì)列的容量為50,如果頭指針,如果頭指針front=45(指向指向 隊(duì)頭元素的前一位置隊(duì)頭元素的前一位置),尾指針,尾指針rear=10(指向隊(duì)尾元素指向隊(duì)尾元素), 則該循環(huán)隊(duì)列中共有則該循環(huán)隊(duì)列中共有 【2】 個(gè)元素。個(gè)元素。 (2010年年3月)月) 8。假設(shè)用一個(gè)長度為。假設(shè)用一個(gè)長度為50的數(shù)組(數(shù)組元索的下標(biāo)從的數(shù)組(數(shù)組元索的下標(biāo)從0 到到49)作為棧的存儲空間,棧底指針)作為棧的存儲空間,棧底指針bottom指間棧底指間棧底 元素,棧頂指針元素,棧頂指針top指向棧頂元素,如果指向棧頂元素,如果bottom=49
48、, top=30(數(shù)組下標(biāo)),則棧中具有(數(shù)組下標(biāo)),則棧中具有【 】個(gè)元素。個(gè)元素。 (2009年年3月)月) 答案:答案:19 答案:答案:15 4650110 講解:XX第49頁 2021/3/10 u鏈表不具有的特點(diǎn)是鏈表不具有的特點(diǎn)是 A) 不必事先估計(jì)存儲空間不必事先估計(jì)存儲空間 B) 可隨機(jī)訪問任一元素可隨機(jī)訪問任一元素 C) 插入刪除不需要移動元素插入刪除不需要移動元素 D) 所需空間與線性表長度成正比所需空間與線性表長度成正比 u數(shù)據(jù)結(jié)構(gòu)分為邏輯結(jié)構(gòu)與存儲結(jié)構(gòu),線性鏈表屬于數(shù)據(jù)結(jié)構(gòu)分為邏輯結(jié)構(gòu)與存儲結(jié)構(gòu),線性鏈表屬于 【1】 。 u數(shù)據(jù)結(jié)構(gòu)中,與所使用的計(jì)算機(jī)無關(guān)的是數(shù)據(jù)的數(shù)
49、據(jù)結(jié)構(gòu)中,與所使用的計(jì)算機(jī)無關(guān)的是數(shù)據(jù)的 A) 存儲結(jié)構(gòu)存儲結(jié)構(gòu)B) 物理結(jié)構(gòu)物理結(jié)構(gòu) C) 邏輯結(jié)構(gòu)邏輯結(jié)構(gòu)D) 物理和存儲結(jié)構(gòu)物理和存儲結(jié)構(gòu) u數(shù)據(jù)的邏輯結(jié)構(gòu)有線性結(jié)構(gòu)和數(shù)據(jù)的邏輯結(jié)構(gòu)有線性結(jié)構(gòu)和 【1】 兩大類。兩大類。 u數(shù)據(jù)的存儲結(jié)構(gòu)是指數(shù)據(jù)的存儲結(jié)構(gòu)是指 A)數(shù)據(jù)所占的存儲空間)數(shù)據(jù)所占的存儲空間 B)數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示)數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示 C)數(shù)據(jù)在計(jì)算機(jī)中的順序存儲方式)數(shù)據(jù)在計(jì)算機(jī)中的順序存儲方式 D)存儲在外存中的數(shù)據(jù))存儲在外存中的數(shù)據(jù) 例題講解例題講解 存儲結(jié)構(gòu)存儲結(jié)構(gòu) 非線性結(jié)構(gòu)非線性結(jié)構(gòu) 講解:XX第50頁 2021/3/10 u 順序存儲方
50、法是把邏輯上相鄰的結(jié)點(diǎn)存儲在物理位置順序存儲方法是把邏輯上相鄰的結(jié)點(diǎn)存儲在物理位置 【2】 的存儲單元的存儲單元 中。中。 u 數(shù)據(jù)處理的最小單位是數(shù)據(jù)處理的最小單位是 A) 數(shù)據(jù)數(shù)據(jù) B) 數(shù)據(jù)元素?cái)?shù)據(jù)元素 C) 數(shù)據(jù)項(xiàng)數(shù)據(jù)項(xiàng)D) 數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu) u 數(shù)據(jù)結(jié)構(gòu)作為計(jì)算機(jī)的一門學(xué)科,主要研究數(shù)據(jù)的邏輯結(jié)構(gòu)、對各種數(shù)數(shù)據(jù)結(jié)構(gòu)作為計(jì)算機(jī)的一門學(xué)科,主要研究數(shù)據(jù)的邏輯結(jié)構(gòu)、對各種數(shù) 據(jù)結(jié)構(gòu)進(jìn)行的運(yùn)算,以及據(jù)結(jié)構(gòu)進(jìn)行的運(yùn)算,以及 A) 數(shù)據(jù)的存儲結(jié)構(gòu)數(shù)據(jù)的存儲結(jié)構(gòu) B) 計(jì)算方法計(jì)算方法 C) 數(shù)據(jù)映象數(shù)據(jù)映象 D) 邏輯存儲邏輯存儲 u 線性表的順序存儲結(jié)構(gòu)和線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)分別是線性表的順序
51、存儲結(jié)構(gòu)和線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)分別是 A) 順序存取的存儲結(jié)構(gòu)、順序存取的存儲結(jié)構(gòu)順序存取的存儲結(jié)構(gòu)、順序存取的存儲結(jié)構(gòu) B) 隨機(jī)存取的存儲結(jié)構(gòu)、順序存取的存儲結(jié)構(gòu)隨機(jī)存取的存儲結(jié)構(gòu)、順序存取的存儲結(jié)構(gòu) C) 隨機(jī)存取的存儲結(jié)構(gòu)、隨機(jī)存取的存儲結(jié)構(gòu)隨機(jī)存取的存儲結(jié)構(gòu)、隨機(jī)存取的存儲結(jié)構(gòu) D) 任意存取的存儲結(jié)構(gòu)、任意存取的存儲結(jié)構(gòu)任意存取的存儲結(jié)構(gòu)、任意存取的存儲結(jié)構(gòu) 相鄰相鄰 講解:XX第51頁 2021/3/10 u 根據(jù)數(shù)據(jù)結(jié)構(gòu)中各數(shù)據(jù)元素之間前后件關(guān)系的復(fù)雜程度,一般將數(shù)據(jù)結(jié)根據(jù)數(shù)據(jù)結(jié)構(gòu)中各數(shù)據(jù)元素之間前后件關(guān)系的復(fù)雜程度,一般將數(shù)據(jù)結(jié) 構(gòu)分成構(gòu)分成 A) 動態(tài)結(jié)構(gòu)和靜態(tài)結(jié)構(gòu)動態(tài)結(jié)構(gòu)
52、和靜態(tài)結(jié)構(gòu) B) 緊湊結(jié)構(gòu)和非緊湊結(jié)構(gòu)緊湊結(jié)構(gòu)和非緊湊結(jié)構(gòu) C) 線性結(jié)構(gòu)和非線性結(jié)構(gòu)線性結(jié)構(gòu)和非線性結(jié)構(gòu) D) 內(nèi)部結(jié)構(gòu)和外部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)和外部結(jié)構(gòu) u 數(shù)據(jù)結(jié)構(gòu)包括數(shù)據(jù)的邏輯結(jié)構(gòu)、數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)包括數(shù)據(jù)的邏輯結(jié)構(gòu)、數(shù)據(jù)的 【2】 以及對數(shù)據(jù)的操作運(yùn)算。以及對數(shù)據(jù)的操作運(yùn)算。 u 數(shù)據(jù)的基本單位是數(shù)據(jù)的基本單位是 【5】 。 u 下列敘述中,錯(cuò)誤的是下列敘述中,錯(cuò)誤的是 A) 數(shù)據(jù)的存儲結(jié)構(gòu)與數(shù)據(jù)處理的效率密切相關(guān)數(shù)據(jù)的存儲結(jié)構(gòu)與數(shù)據(jù)處理的效率密切相關(guān) B) 數(shù)據(jù)的存儲結(jié)構(gòu)與數(shù)據(jù)處理的效率無關(guān)數(shù)據(jù)的存儲結(jié)構(gòu)與數(shù)據(jù)處理的效率無關(guān) C) 數(shù)據(jù)的存儲結(jié)構(gòu)在計(jì)算機(jī)中所占的空間不一定是連續(xù)的數(shù)據(jù)的存儲
53、結(jié)構(gòu)在計(jì)算機(jī)中所占的空間不一定是連續(xù)的 D) 一種數(shù)據(jù)的邏輯結(jié)構(gòu)可以有多種存儲結(jié)構(gòu)一種數(shù)據(jù)的邏輯結(jié)構(gòu)可以有多種存儲結(jié)構(gòu) 存儲結(jié)構(gòu)存儲結(jié)構(gòu) 數(shù)據(jù)元素?cái)?shù)據(jù)元素 講解:XX第52頁 2021/3/10 u鏈表不具有的特點(diǎn)是鏈表不具有的特點(diǎn)是 A) 不必事先估計(jì)存儲空間不必事先估計(jì)存儲空間 B) 可隨機(jī)訪問任一元素可隨機(jī)訪問任一元素 C) 插入刪除不需要移動元素插入刪除不需要移動元素 D) 所需空間與線性表長度成正比所需空間與線性表長度成正比 u順序存儲方法是把邏輯上相鄰的結(jié)點(diǎn)存儲在物理位置順序存儲方法是把邏輯上相鄰的結(jié)點(diǎn)存儲在物理位置 【2】 的存儲單元的存儲單元 中。中。 u長度為長度為n的順序存
54、儲線性表中,當(dāng)在任何位置上插入一個(gè)元素概率都相的順序存儲線性表中,當(dāng)在任何位置上插入一個(gè)元素概率都相 等時(shí),插入一個(gè)元素所需移動元素的平均個(gè)數(shù)為等時(shí),插入一個(gè)元素所需移動元素的平均個(gè)數(shù)為 【1】 。 u線性表若采用順序存儲結(jié)構(gòu)時(shí),要求內(nèi)存中可用存儲單元的地址線性表若采用順序存儲結(jié)構(gòu)時(shí),要求內(nèi)存中可用存儲單元的地址 A) 必須是連續(xù)的必須是連續(xù)的 B) 部分地址必須是連續(xù)的部分地址必須是連續(xù)的 C) 一定是不連續(xù)的一定是不連續(xù)的 D) 連續(xù)不連續(xù)都可以連續(xù)不連續(xù)都可以 例題講解例題講解 相鄰相鄰 2 n 講解:XX第53頁 2021/3/10 u 線性表線性表L=(a1,a2,a3,ai,an)
55、,下列說法正確的是,下列說法正確的是 A) 每個(gè)元素都有一個(gè)直接前件和直接后件每個(gè)元素都有一個(gè)直接前件和直接后件 B) 線性表中至少要有一個(gè)元素線性表中至少要有一個(gè)元素 C) 表中諸元素的排列順序必須是由小到大或由大到小表中諸元素的排列順序必須是由小到大或由大到小 D) 除第一個(gè)元素和最后一個(gè)元素外,其余每個(gè)元素都有一個(gè)除第一個(gè)元素和最后一個(gè)元素外,其余每個(gè)元素都有一個(gè) 且只有一個(gè)直且只有一個(gè)直 接前件和直接后件接前件和直接后件 u 線性表的順序存儲結(jié)構(gòu)和線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)分別是線性表的順序存儲結(jié)構(gòu)和線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)分別是 A) 順序存取的存儲結(jié)構(gòu)、順序存取的存儲結(jié)構(gòu)順序存取的存儲結(jié)構(gòu)、
56、順序存取的存儲結(jié)構(gòu) B) 隨機(jī)存取的存儲結(jié)構(gòu)、順序存取的存儲結(jié)構(gòu)隨機(jī)存取的存儲結(jié)構(gòu)、順序存取的存儲結(jié)構(gòu) C) 隨機(jī)存取的存儲結(jié)構(gòu)、隨機(jī)存取的存儲結(jié)構(gòu)隨機(jī)存取的存儲結(jié)構(gòu)、隨機(jī)存取的存儲結(jié)構(gòu) D) 任意存取的存儲結(jié)構(gòu)、任意存取的存儲結(jié)構(gòu)任意存取的存儲結(jié)構(gòu)、任意存取的存儲結(jié)構(gòu) u 下列敘述中,錯(cuò)誤的是下列敘述中,錯(cuò)誤的是 A) 數(shù)據(jù)的存儲結(jié)構(gòu)與數(shù)據(jù)處理的效率密切相關(guān)數(shù)據(jù)的存儲結(jié)構(gòu)與數(shù)據(jù)處理的效率密切相關(guān) B) 數(shù)據(jù)的存儲結(jié)構(gòu)與數(shù)據(jù)處理的效率無關(guān)數(shù)據(jù)的存儲結(jié)構(gòu)與數(shù)據(jù)處理的效率無關(guān) C) 數(shù)據(jù)的存儲結(jié)構(gòu)在計(jì)算機(jī)中所占的空間不一定是連續(xù)的數(shù)據(jù)的存儲結(jié)構(gòu)在計(jì)算機(jī)中所占的空間不一定是連續(xù)的 D) 一種數(shù)據(jù)的邏
57、輯結(jié)構(gòu)可以有多種存儲結(jié)構(gòu)一種數(shù)據(jù)的邏輯結(jié)構(gòu)可以有多種存儲結(jié)構(gòu) 講解:XX第54頁 2021/3/10 u 根據(jù)數(shù)據(jù)結(jié)構(gòu)中各數(shù)據(jù)元素之間前后件關(guān)系的復(fù)雜程度,一般將數(shù)根據(jù)數(shù)據(jù)結(jié)構(gòu)中各數(shù)據(jù)元素之間前后件關(guān)系的復(fù)雜程度,一般將數(shù) 據(jù)結(jié)構(gòu)分成據(jù)結(jié)構(gòu)分成 A) 動態(tài)結(jié)構(gòu)和靜態(tài)結(jié)構(gòu)動態(tài)結(jié)構(gòu)和靜態(tài)結(jié)構(gòu) B) 緊湊結(jié)構(gòu)和非緊湊結(jié)構(gòu)緊湊結(jié)構(gòu)和非緊湊結(jié)構(gòu) C) 線性結(jié)構(gòu)和非線性結(jié)構(gòu)線性結(jié)構(gòu)和非線性結(jié)構(gòu) D) 內(nèi)部結(jié)構(gòu)和外部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)和外部結(jié)構(gòu) u 當(dāng)線性表采用順序存儲結(jié)構(gòu)實(shí)現(xiàn)存儲時(shí),其主要特點(diǎn)是當(dāng)線性表采用順序存儲結(jié)構(gòu)實(shí)現(xiàn)存儲時(shí),其主要特點(diǎn)是 【1】 。 隨機(jī)存取隨機(jī)存取 講解:XX第55頁 2021/3/10
58、 u鏈表不具有的特點(diǎn)是鏈表不具有的特點(diǎn)是 A) 不必事先估計(jì)存儲空間不必事先估計(jì)存儲空間 B) 可隨機(jī)訪問任一元素可隨機(jī)訪問任一元素 C) 插入刪除不需要移動元素插入刪除不需要移動元素D) 所需空間與線性表長度成正比所需空間與線性表長度成正比 u用鏈表表示線性表的優(yōu)點(diǎn)是用鏈表表示線性表的優(yōu)點(diǎn)是 A) 便于隨機(jī)存取便于隨機(jī)存取 B) 花費(fèi)的存儲空間較順序存儲少花費(fèi)的存儲空間較順序存儲少 C) 便于插入和刪除操作便于插入和刪除操作 D) 數(shù)據(jù)元素的物理順序與邏輯順序相同數(shù)據(jù)元素的物理順序與邏輯順序相同 u長度為長度為n的順序存儲線性表中的順序存儲線性表中,當(dāng)在任何位置上插入一個(gè)元素概率都相等時(shí)當(dāng)在
59、任何位置上插入一個(gè)元素概率都相等時(shí), 插入一個(gè)元素所需移動元素的平均個(gè)數(shù)為插入一個(gè)元素所需移動元素的平均個(gè)數(shù)為 【1】 。 u在單鏈表中,增加頭結(jié)點(diǎn)的目的是在單鏈表中,增加頭結(jié)點(diǎn)的目的是 A) 方便運(yùn)算的實(shí)現(xiàn)方便運(yùn)算的實(shí)現(xiàn) B) 使單鏈表至少有一個(gè)結(jié)點(diǎn)使單鏈表至少有一個(gè)結(jié)點(diǎn) C) 標(biāo)識表結(jié)點(diǎn)中首結(jié)點(diǎn)的位置標(biāo)識表結(jié)點(diǎn)中首結(jié)點(diǎn)的位置 D) 說明單鏈表是線性表的鏈?zhǔn)酱鎯?shí)現(xiàn)說明單鏈表是線性表的鏈?zhǔn)酱鎯?shí)現(xiàn) 例題講解例題講解 2 n 講解:XX第56頁 2021/3/10 u 非空的循環(huán)單鏈表非空的循環(huán)單鏈表head的尾結(jié)點(diǎn)的尾結(jié)點(diǎn)(由由p所指向所指向) ,滿足,滿足 A) p-next=NULLB)
60、 p=NULL C) p-next=head D) p=head u 循環(huán)鏈表的主要優(yōu)點(diǎn)是循環(huán)鏈表的主要優(yōu)點(diǎn)是 A) 不再需要頭指針了不再需要頭指針了 B) 從表中任一結(jié)點(diǎn)出發(fā)都能訪問到整個(gè)鏈表從表中任一結(jié)點(diǎn)出發(fā)都能訪問到整個(gè)鏈表 C) 在進(jìn)行插入、刪除運(yùn)算時(shí),能更好的保證鏈表不斷開在進(jìn)行插入、刪除運(yùn)算時(shí),能更好的保證鏈表不斷開 D) 已知某個(gè)結(jié)點(diǎn)的位置后,能夠容易的找到它的直接前件已知某個(gè)結(jié)點(diǎn)的位置后,能夠容易的找到它的直接前件 u 當(dāng)循環(huán)隊(duì)列非空且隊(duì)尾指針等于隊(duì)頭指針時(shí),說明循環(huán)隊(duì)列已滿,當(dāng)循環(huán)隊(duì)列非空且隊(duì)尾指針等于隊(duì)頭指針時(shí),說明循環(huán)隊(duì)列已滿, 不能進(jìn)行入隊(duì)運(yùn)算。這種情況稱為不能進(jìn)行入隊(duì)
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 渣土購買及環(huán)保處理服務(wù)2025年度合同3篇
- 二零二五年度荒料銷售與風(fēng)險(xiǎn)管理合同3篇
- 二零二五版房地產(chǎn)租賃合同增加補(bǔ)充協(xié)議范本3篇
- 二零二五年度餐飲公司環(huán)保設(shè)施投資合作合同范本3篇
- 二零二五版本二手房買賣合同含房屋相鄰權(quán)及公共設(shè)施使用協(xié)議2篇
- 二零二五版中小學(xué)教師派遣及教學(xué)資源整合合同3篇
- 二零二五年度文化產(chǎn)業(yè)園區(qū)場地使用權(quán)買賣合同范例3篇
- 基于2025年度的環(huán)保服務(wù)合同2篇
- 二零二五版企業(yè)股權(quán)激勵(lì)方案評估與優(yōu)化合同3篇
- 個(gè)人出版作品稿酬合同(2024版)3篇
- 高三課題研究報(bào)告范文
- 2024年初三數(shù)學(xué)競賽考試試題
- 竇性心動過速的危害
- 深基坑工程基坑土方開挖及支護(hù)降水施工方案
- 2024年江西生物科技職業(yè)學(xué)院單招職業(yè)技能測試題庫帶解析答案
- 醫(yī)藥制造企業(yè)資本結(jié)構(gòu)優(yōu)化研究以貴州百靈為例
- GB 31335-2024鐵礦開采和選礦單位產(chǎn)品能源消耗限額
- 醫(yī)院高風(fēng)險(xiǎn)意外事件應(yīng)急措施和救護(hù)機(jī)制
- 橋本甲狀腺炎-90天治療方案
- 【復(fù)合附件版】個(gè)人借車免責(zé)協(xié)議書簡單
- 焊接工裝夾具設(shè)計(jì)手冊
評論
0/150
提交評論