亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

計算機等級

計算機二級C語言公共基礎(chǔ)復習資料

時間:2024-06-02 01:44:05 計算機等級 我要投稿
  • 相關(guān)推薦

2017年計算機二級C語言公共基礎(chǔ)復習資料

  C語言提供多種運算符和表達式值的方法,對問題的表達可通過多種途徑獲得,其程序設(shè)計更主動、靈活。下面是小編整理的關(guān)于計算機二級C語言公共基礎(chǔ)復習資料,歡迎大家參考!

2017年計算機二級C語言公共基礎(chǔ)復習資料

  循環(huán)鏈表及其基本運算

  在線性鏈表中,雖然對數(shù)據(jù)元素的插入和刪除操作比較簡單,但由于它對第一個結(jié)點和空表需要單獨處理,使得空表與非空表的處理不一致。

  循環(huán)鏈表,即是采用另一種鏈接方式,它的特點如下:

  (1)在循環(huán)鏈表中增加一個表頭結(jié)點,其數(shù)據(jù)域為任意或根據(jù)需要來設(shè)置,指針域指向線性表的第一個元素的結(jié)點。循環(huán)鏈表的頭指針指向表頭結(jié)點。

  (2)循環(huán)鏈表中最后一個結(jié)點的指針域不是空的,而是指向表頭結(jié)點。在循環(huán)鏈表中,所有結(jié)點的指針構(gòu)成一個環(huán)狀鏈。

  在循環(huán)鏈表中,只要指出表中任何一個結(jié)點的位置,均可以從它開始掃描到所有的結(jié)點,而線性鏈表做不到,線性鏈表是一種單向的鏈表,只能按照指針的方向進行掃描。

  循環(huán)鏈表中設(shè)置了一個表頭結(jié)點,因此,在任何時候都至少有一個結(jié)點,因此空表與非空表的運算相統(tǒng)一。

  循環(huán)鏈表的特點是無須增加存儲量,僅對表的鏈接方式稍作改變,即可使得表處理更加方便靈活。

  【例】在鏈表上實現(xiàn)將兩個線性表(a1,a2,…,an)和(b1,b2,…,bm)連接成一個線性表(a1,…,an,b1,…bm)的運算。

  分析:若在單鏈表或頭指針表示的單循環(huán)表上做這種鏈接操作,都需要遍歷第一個鏈表,找到結(jié)點an,然后將結(jié)點b1鏈到an的后面,其執(zhí)行時間是O(n)。

  若在尾指針表示的單循環(huán)鏈表上實現(xiàn),則只需修改指針,無須遍歷,其執(zhí)行時間是O(1)。

  相應的'算法如下:

  LinkListConnect(LinkListA,LinkListB){

  //假設(shè)A,B為非空循環(huán)鏈表的尾指針

  LinkListp=A->next;//①保存A表的頭結(jié)點位置

  A->next=B->next->next;//②B表的開始結(jié)點鏈接到A表尾

  free(B->next);//③釋放B表的頭結(jié)點

  B->next=p;//④

  returnB;//返回新循環(huán)鏈表的尾指針

  }

  注意:

 、傺h(huán)鏈表中沒有NULL指針。涉及遍歷操作時,其終止條件就不再是像非循環(huán)鏈表那樣判別p或p->next是否為空,而是判別它們是否等于某一指定指針,如頭指針或尾指針等。

 、谠趩捂湵碇,從一已知結(jié)點出發(fā),只能訪問到該結(jié)點及其后續(xù)結(jié)點,無法找到該結(jié)點之前的其它結(jié)點。而在單循環(huán)鏈表中,從任一結(jié)點出發(fā)都可訪問到表中所有結(jié)點,這一優(yōu)點使某些運算在單循環(huán)鏈表上易于實現(xiàn)。

  二叉樹的遍歷

  二叉樹的遍歷即是不重復地訪問二叉樹的所有結(jié)點。

  在遍歷二叉樹時,一般先遍歷左子樹,然后再遍歷右子樹。在先左后右的原則下,二叉樹的遍歷又可分為三種:前序遍歷、中序遍歷和后序遍歷。

  1)前序遍歷

  前序遍歷即先訪問根結(jié)點,然后遍歷左子樹,最后遍歷右子樹。在遍歷左子樹和遍歷右子樹時,依然是先遍歷根結(jié)點,然后是左子樹,再是右子樹。

  操作的具體方式:

  若二叉樹為空,則結(jié)束返回。

  否則:訪問根結(jié)點前序遍歷左子樹前序遍歷右子樹

  如上圖所示的完全二叉樹,它的前序遍歷結(jié)果是:A、B、D、H、P、Q、I、R、E、J、K、C、F、L、M、G、N、O

  2)中序遍歷

  中序遍歷,即先遍歷左子樹,然后訪問根結(jié)點,最后是遍歷右子樹。

  具體的操作方式:

  若二叉樹為空,則結(jié)束返回。

  否則:中序遍歷左子樹訪問根結(jié)點 中序遍歷右子樹

  這里強調(diào),在遍歷左子樹和右子樹時,仍然要采用中序遍歷的方法。

  如上圖所示的完全二叉樹,它的中序遍歷結(jié)果是:P、H、Q、D、R、I、B、J、E、K、A、L、F、M、C、N、G、O

  3)后序遍歷

  后序遍歷,即選遍歷左子樹,然后是遍歷右子樹,最后訪問根結(jié)點。

  具體的`操作方式:

  若二叉樹為空,則結(jié)束返回。

  否則:前序遍歷左子樹前序遍歷右子樹訪問根結(jié)點

  如上圖所示的完全二叉樹,它的后序遍歷結(jié)果是:P、Q、H、R、I、D、J、K、E、B、L、M、F、N、O、G、C、A

【計算機二級C語言公共基礎(chǔ)復習資料】相關(guān)文章:

計算機二級《C語言》模擬試題及答案10-24

計算機二級C語言基本考點匯總07-31

計算機二級C語言題庫2016最新08-21

計算機二級C語言真題及答案07-11

2017年計算機二級公共基礎(chǔ)知識基礎(chǔ)試題08-13

2017年計算機二級公共基礎(chǔ)知識基礎(chǔ)考試09-27

計算機二級考試C語言知識點09-30

國家計算機二級c語言題庫及答案09-05

全國計算機二級c語言題庫試題及答案07-19

2016年計算機二級c語言真題及答案09-19