數據結構(本)形考作業及答案_第1頁
數據結構(本)形考作業及答案_第2頁
數據結構(本)形考作業及答案_第3頁
數據結構(本)形考作業及答案_第4頁
數據結構(本)形考作業及答案_第5頁
已閱讀5頁,還剩52頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

數據結構(本)形考作業及答案數據結構(本)形考作業及答案數據結構(本)形考作業及答案數據結構(本)形考作業及答案編制僅供參考審核批準生效日期地址:電話:傳真:郵編:1.數據結構中,與所使用的計算機無關的是數據的(B)。選擇一項:A.

物理和存儲結構B.

邏輯結構C.

物理結構D.

存儲結構2.組成數據的基本單位是(B)。選擇一項:A.

數據類型B.

數據變量C.

數據元素D.

數據項3.研究數據結構就是研究(D)。選擇一項:A.

數據的邏輯結構B.

數據的邏輯結構和存儲結構C.

數據的存儲結構D.

數據的邏輯結構和存儲結構以及其數據在運算上的實現4.在數據結構中,從邏輯上可以把數據結構分成(A)。選擇一項:A.

線性結構和非線性結構B.

動態結構和靜態結構C.

內部結構和外部結構D.

緊湊結構和非緊湊結構5.數據結構是一門研究計算機中(B)對象及其關系的科學。選擇一項:A.

數值運算B.

非數值運算C.

非集合D.

集合6.下列說法不正確的是(C)。選擇一項:A.數據元素是數據的基本單位B.數據項是數據中不可分割的最小可標識單位C.數據項可由若干個數據元素構成D.數據可由若干個數據元素構成7.設有如下遺產繼承規則:丈夫和妻子可以互相繼承遺產,子女可以繼承父親和母親的遺產,子女間不能相互繼承,則表示該遺產繼承關系最合適的數據結構應該是(D)結構。選擇一項:A.線性B.集合C.樹形D.圖狀8.算法的時間復雜度與(B)有關。選擇一項:A.所使用的計算機B.算法本身C.算法的程序設計D.數據結構9.算法分析的兩個主要方面是(C)。選擇一項:A.數據復雜性和程序復雜性B.正確性和簡明性C.時間復雜性和空間復雜性D.可讀性和文檔性10.數據的存儲結構包括數據元素的表示和(B)。選擇一項:A.相關算法B.數據元素間關系的表示C.數據處理的方法D.數據元素的類型11.數據元素是數據的最小單位(錯)。選擇一項:對錯12.數據的邏輯結構是指數據的各數據項之間的邏輯關系(錯)。選擇一項:對錯13.算法的優劣與算法描述語言無關,但與所用計算機有關(錯)。選擇一項:對錯14.算法是在數據結構的基礎上對特定問題求解步驟的一種描述,也是若干條指令組成的優先序列(對)。選擇一項:對錯15.算法可以用不同的語言描述,如果用C語言等高級語言來描述,則算法實際上就是程序了(錯)。選擇一項:對錯16.程序一定是算法(錯)。選擇一項:對錯17.數據的物理結構是指數據在計算機內的實際存儲形式(對)。選擇一項:對錯18.數據結構中評價算法的兩個重要指標是時間復雜度和空間復雜度(對)。選擇一項:對錯19.在順序存儲結構中,有時也存儲數據結構中元素之間的關系(錯)。選擇一項:對錯20.線性表的順序存儲比鏈式存儲最與利于進行(B)操作。選擇一項:A.表頭插入或刪除B.表尾插入或刪除C.查找D.按值插入或刪除21.鏈表不具備的特點是(C)。選擇一項:A.不必事先估計存儲空間B.所需空間與其長度成正比C.可隨機訪問任一結點D.插入、刪除不需要移動元素22.向一個有127個元素的順序表中插入一個新元素,并保持原來的順序不變,平均要移動(A)個元素。選擇一項:A.B.8C.63D.723.在一個長度為n的順序存儲線性表中,向第i個元素(1≤i≤n)之前插入一個新元素時,需要依次后移(C)個元素。選擇一項:A.n-i-1B.n-iC.n-i+1D.i24.在一個長度為n的順序存儲線性表中,刪除第i個元素(1≤i≤n),需要前移(A)個元素。選擇一項:A.n-iB.n-i-1C.n-i+1D.i25.一個順序存儲線性表的第一個元素的存儲地址是90,每個元素的長度是2,則第6個元素的存儲地址是(A)。選擇一項:A.100B.106C.98D.10226.用鏈表表示線性表的優點是(B)。選擇一項:A.花費的存儲空間較順序存儲少B.便于插入和刪除C.便于隨機存取D.數據元素的物理順序和邏輯順序相同27.帶頭結點的鏈表為空的判斷條件是(A)(設頭指針為head)。選擇一項:A.head->next==NULLB.head!=NULLC.head->next==headD.head==NULL28.非空的單向循環鏈表的尾結點滿足(A)(設頭指針為head,指針p指向尾結點)。選擇一項:A.p->next==headB.p==headC.p->next==NULLD.p==NULL29.在一個單鏈表中,p、q分別指向表中兩個相鄰的結點,且q所指結點是p所指結點的直接后繼,現要刪除q所指結點,可用語句(D)。選擇一項:A.q->next=NULLB.p=q->nextC.p->next=qD.p->next=q->next30.線性表在鏈式存儲中各結點之間的地址(D)。選擇一項:A.必須連續B.部分地址必須連續C.不能連續D.連續與否無所謂31.有關線性表的正確說法是(A)。選擇一項:A.除了一個和最后一個元素外,其余元素都有一個且僅有一個直接前驅和一個直接后繼B.線性表至少要求一個元素C.表中的元素必須按由小到大或由大到下排序D.每個元素都有一個直接前驅和一個直接后繼32.若某線性表最常用的操作是存取任一指定序號的元素和在最后進行插入和刪除運算,則利用(B)存儲方式最省時間。選擇一項:A.單向循環鏈表B.順序表C.雙向循環鏈表D.帶頭結點的雙向循環鏈表33.在單鏈表中,若*p不是尾結點,在其后插入*s結點的操作是(D)。選擇一項:A.p->next=s;s->next=p;B.s->next=p;p->next=s;C.s->next=p->next;p=s;D.s->next=p->next;p->next=s;34.在一個長度為n的順序表中為了刪除第5個元素,由第6個元素開始從后到前依次移動了15個元素。則原順序表的長度為(A)。選擇一項:A.20B.21C.19D.2535.對于一個具有n個結點的單向鏈表,在給定值為x的結點之后插入一個新結點的時間復雜度為(B)。選擇一項:A.O(n2)B.O(n)C.O(1)D.O(n3)36.設順序存儲的線性表長度為n,對于插入操作,設插入位置是等概率的,則插入一個元素平均移動元素的次數為(B)。選擇一項:A.nB.n/2C.n-i+1D.n-137.線性表的順序結構中,(A)。選擇一項:A.邏輯上相鄰的元素在物理位置上也相鄰B.數據元素是不能隨機訪問的C.進行數據元素的插入、刪除效率較高D.邏輯上相鄰的元素在物理位置上不一定相鄰38.以下說法中不正確的是(A)。選擇一項:A.已知單向鏈表中任一結點的指針就能訪問到鏈表中每個結點B.單向循環鏈表中尾結點的指針域中存放的是頭指針C.雙向循環鏈表中每個結點需要包含兩個指針域D.順序存儲的線性鏈表是可以隨機訪問的39.以下表中可以隨機訪問的是(C)。選擇一項:A.雙向鏈表B.單向循環鏈表C.順序表D.單向鏈表40.設鏈表中的結點是NODE類型的結構體變量,且有NODE*p;為了申請一個新結點,并由p指向該結點,可用以下語句(C)。選擇一項:A.p=(NODE)malloc(sizeof(p));B.p=(NODE*)malloc(sizeof(p));C.p=(NODE*)malloc(sizeof(NODE));D.p=(*NODE)malloc(sizeof(NODE));41.設head為非空的單向循環鏈表頭指針,p指向鏈表的尾結點,則滿足邏輯表達式(C)的值為真。選擇一項:A.p-==headB.p->next=NULLC.p->next==headD.p==NULL42.順序存取的線性表樂意隨機存取(對)。選擇一項:對錯43.由于順序存儲要求連續的存儲區域,所以在存儲管理上不夠靈活(對)。選擇一項:對錯44.線性表中的元素可以是各種各樣的,但同一線性表中的數據元具有相同的特性,因此是屬于同一數據對象(對)。選擇一項:對錯45.在線性表的順序存儲結構中,邏輯上相鄰的兩個元素但是在物理上位置并不一定是相鄰的(錯)。選擇一項:對錯46.在單鏈表中,任何兩個元素的存儲位置之間都有固定的聯系,因為可以從頭結點進行查找任何一個元素(錯)。選擇一項:對錯47.線性表的鏈式存儲結構優于順序存儲結構(錯)。選擇一項:對錯48.在線性表的順序存儲結構中,插入和刪除元素時,移動元素的個數與該袁術的位置有關(對)。選擇一項:對錯49.在單鏈表中,要取得某個元素,只要知道該元素的指針機可,因此單鏈表是隨機存取的存儲結構。(錯)選擇一項:對錯50.順序存儲方式只能用于存儲線性結構。(錯)選擇一項:對錯51.順序存儲方式的有點是存儲密度大,且插入、刪除運算效率高。(錯)選擇一項:對錯52.一個順序棧一旦被聲明,其占用空間的大小(D)。選擇一項:A.不能固定B.可以改變C.動態變化D.已固定53.鏈棧和順序棧相比,有一個比較明顯的缺點,即(A)。選擇一項:A.通常不會出現棧滿的情況B.不會出現棧空的情況C.插入操作更加方便D.刪除操作更加方便54.用單鏈表表示的鏈式隊列的隊頭在鏈表的(B)位置。選擇一項:A.任意位置B.鏈頭C.鏈尾D.鏈中55.在解決計算機主機與打印機之間速度不匹配問題時通常設置一個打印數據緩沖區,主機將要輸出的數據依次寫入緩沖區中,而打印機則從緩沖區中取出數據打印,該緩沖區應該是一個(D)結構。選擇一項:A.線性表B.數組C.堆棧D.隊列56.在解決計算機主機與打印機之間速度不匹配問題時通常設置一個打印數據緩沖區,主機將要輸出的數據依次寫入緩沖區中,而打印機則從緩沖區中取出數據打印,該緩沖區應該是一個()結構。選擇一項:A.線性表B.數組C.堆棧D.隊列57.循環隊列A[m]存放其元素,用front和rear分別表示隊頭及隊尾,則循環隊列滿的條件是(B)。選擇一項:A.(rear+1)%m-1=frontB.(rear+1)%m=frontC.(rear=frontD.(rear=front+158.在一個棧頂指針為top的鏈棧中,將一個p指針所指的結點入棧,應執行(A)。選擇一項:A.p->next=top;top=p;B.p->next=top->next;top=top->next;C.p->next=top->next;top->next=p;D.top->next=p;59.在一個棧頂指針為top的鏈棧中刪除一個結點時,用x保存被刪結點的值,則執行(A)。選擇一項:A.x=top->data;top=top->next;B.x=top->data;C.x=top;top=top->next;D.top=top->next;x=top->data;60.在鏈隊列中,f和r分別為隊頭和隊尾指針,要把s所指結點入隊,應執行(B)。選擇一項:A.r->next=s;B.r->next=s;r=s;C.r->next=s->next;D.r->next=s->next;r=s;61.設top是一個鏈棧的棧頂指針,棧中每個結點由一個數據域data和指針域next組成,設用x接收棧頂元素,則取棧頂元素的操作為(C)。選擇一項:A.top->data=x;B.x=top->data;top=top->next;C.x=top->data;D.top=top->next;62.一個隊列的入隊序列是2,4,6,8,則隊列的輸出序列是(C)。選擇一項:A.6,4,2,8B.4,2,8,6C.2,4,6,8D.8,6,4,263.一個棧的進棧序列是5,6,7,8,則棧的不可能的出棧序列是(A)。(進出棧操作可以交替進行)選擇一項:A.5,8,6,7B.7,6,5,8C.8,7,6,5D.7,6,8,564.棧的插入刪除操作在(A)進行。選擇一項:A.棧頂B.任意位置C.指定位置D.棧底65.棧和隊列的相同點是(A)。選擇一項:A.邏輯結構與線性表相同,都是操作規則受到限制的線性表B.都是后進先出C.都是后進后出D.邏輯結構與線性表不同66.以下說法正確的是(C)。選擇一項:A.棧和隊列的特點都是先進先出B.棧和隊列的特點都是先進后出C.棧的特點是先進后出,隊列的特點是先進先出D.棧的特點是先進先出,隊列的特點是先進后出67.設有一個帶頭結點的鏈隊列,隊列中每個結點由一個數據域data和指針域next組成,front和rear分別為鏈隊列的頭指針和尾指針。設p指向要入隊的新結點(該結點已被賦值),則入隊操作為(D)。選擇一項:A.p=rear->next;rear=p;B.rear->next=p;p=rear;C.rear=p;rear->next=p;D.rear->next=p;rear=p;68.設有一個帶頭結點的鏈隊列,隊列中每個結點由一個數據域data和指針域next組成,front和rear分別為鏈隊列的頭指針和尾指針,要執行出隊操作,用x保存出隊元素的值,p為指向結點類型的指針,可執行如下操作:p=front->next;x=p->data;然后指行(D)。選擇一項:A.front=p->next;B.front->next=p;C.front=p;D.front->next=p->next;69.以下說法不正確的是(A)。選擇一項:A.順序隊列中,當尾指針已經超越隊列存儲空間的上界,則一定是隊列已滿B.順序棧中,棧空時再作出棧棧操作稱為“下溢”C.順序隊列中,隊列的頭指針和尾指針均超越隊列存儲空間的上界,則隊列已空D.順序棧中,棧滿時再進行進棧操作稱為“上溢”70.一個遞歸算法必須包括(D)。選擇一項:A.終止條件和迭代部分B.迭代部分C.遞歸部分D.終止條件和遞歸部分71.假定一個鏈式隊列的隊頭和隊尾指針分別為front和rear,則判斷隊空的條件為(D)。選擇一項:A.front=NULLB.rear!=NULLC.front!=NULLD.front=rear72.向順序棧中壓入新元素時,應當(C)。選擇一項:A.同時進行B.先后次序無關緊要C.先存入元素,再移動棧頂指針D.應當先移動棧頂指針,再存入元素73.判斷一個循環隊列Q(最多元素為m)為滿的條件是(A)。選擇一項:A.Q->front==(Q->rear+1)%mB.Q->front==Q->rearC.Q->rear!=(Q->front+1)%mD.Q->front=Q->rear+174.判斷棧滿(元素個數最多n個)的條件是(D)。選擇一項:A.top!=0B.top==n-1C.top==0D.top=-175.隊列的刪除操作是在(C)。選擇一項:A.隊后B.隊尾C.隊前D.隊頭76.一個隊列的入隊序列是a,b,c,d,按該隊列的可能輸出序列使各元素依次入棧,該棧的可能輸出序列是(C)。(進棧出棧可以交替進行)。選擇一項:A.d,b,a,cB.c,a,b,dC.d,c,b,aD.d,a,b,c77.以下陳述中正確的是(D)。選擇一項:A.串的長度必須大于零B.空串就是空格串C.串中元素只能是字母D.串是一種特殊的線性表78.設有兩個串p和q,其中q是p的子串,q在p中首次出現的位置的算法稱為(D)。選擇一項:A.連接B.求串長C.求子串D.匹配79.串是(C)。選擇一項:A.不少于一個字符的序列B.任意個字母的序列C.有限個字符的序列D.不少于一個字母的序列80.串的長度是指(A)。選擇一項:A.串中所含字符的個數B.串中所含非空格字符的個數C.串中所含不同字母的個數D.串中所含不同字符的個數81.在C語言中,存儲字符串“ABCD”需占用(5)字節。選擇一項:A.3B.2C.5D.482.下面關于串的敘述中,不正確的是(B)。選擇一項:A.模式匹配是串的一種重要運算B.空串是由空格構成的串C.串即可以采用順序存儲,也可以采用鏈式存儲D.串是字符的有限序列83.串與普通的線性表相比較,它的特殊性體現在(C)。選擇一項:A.順序的存儲結構B.數據元素可以任意C.數據元素是一個字符D.鏈接的存儲結構84.空串與空格串(A)。選擇一項:A.不相同B.相同C.無法確定D.可能相同85.兩個字符串相等的條件是(A)。選擇一項:A.兩串的長度相等,并且對應位置上的字符相同B.兩串包含的字符相同C.兩串的長度相等D.兩串的長度相等,并且兩串包含的字符相同86.在實際應用中,要輸入多個字符串,且長度無法預定。則應該采用(B)存儲比較合適()。選擇一項:A.堆結構B.鏈式C.無法確定D.順序87.下列關于串的敘述中,不正確的是(B)。選擇一項:A.模式匹配是串的一種重要運算B.串是字符的有限序列C.空串是由空格構成的串D.串既可以采用順序存儲,也可以采用鏈式存儲88.串函數StrCmp(“abA”,”aba”)的值為(B)。選擇一項:A.0B.-1C.1D.“abAaba”89.設主串為“ABcCDABcdEFaBc”,以下模式串能與主串成功匹配的是(C)。選擇一項:A.BCdB.AbcC.BcdD.ABC.字符串a1=“AEIJING”,a2=“AEI”,a3=“AEFANG”,a4=“AEFI”中最大的是(B)。選擇一項:A.a2B.a1C.a3D.a491.字符串〝abcd321ABCD〞的子串是(A)。選擇一項:A.〝21ABC〞B.〝321a〞C.〝abcABCD〞D.abcD92.數組a經初始化chara[]=“English”;a[1]中存放的是(D)。選擇一項:A.〝n〞B.〝E〞C.字符ED.字符n93.空串的長度為(B)。選擇一項:A.1B.0C.3D.294.一維數組A采用順序存儲結構,每個元素占用4個字節,第8個元素的存儲地址為120,則該數組的首地址是(B)。選擇一項:A.88B.92C.32D.9095.稀疏矩陣采用壓縮存儲的目的主要是(D)。選擇一項:A.去掉矩陣中的多余元素B.對矩陣元素的存取變得簡單C.表達變得簡單D.減少不必要的存儲空間的開銷96.一個非空廣義表的表頭(C)。選擇一項:A.只能是原子B.不可能是原子C.可以是子表或原子D.只能是子表97.常對數組進行的兩種基本操作是(C)。選擇一項:A.查找與索引B.索引與、和修改C.查找和修改D.建立與刪除98.在二維數組A[8][10]中,每一個數組元素A[i][j]占用3個存儲空間,所有數組元素相繼存放于一個連續的存儲空間中,則存放該數組至少需要的存儲空間是(A)。選擇一項:A.240B.270C.80D.10099.設有一個18階的對稱矩陣A,采用壓縮存儲的方式,將其下三角部分以行序為主序存儲到一維數組B中(數組下標從1開始),則矩陣中元素A10,8在一維數組B中的下標是(D)。選擇一項:A.18B.58C.45D.53100.廣義表((a))的表尾是(D)。選擇一項:A.(a)B.((a))C.aD.0101.設有一個10階的對稱矩陣A,采用壓縮存儲的方式,將其下三角部分以行序為主序存儲到一維數組B中(數組下標從1開始),則矩陣中元素A8,5在一維數組B中的下標是(D)。選擇一項:A.32B.85C.41D.33102.設廣義表類((a,b,c)),則L的長度和深度分別為(B)。選擇一項:A.2和3B.1和2C.1和1D.1和3103.廣義表(a,a,b,d,e,((i,j),k))的表頭是__A__。選擇一項:A.aB.a,(a,b)C.(a)D.(a,b)104.稀疏矩陣的壓縮存儲方式通常有兩種,即(A)。選擇一項:A.三元組和十字鏈表B.二元組和三元組C.三元組和散列D.散列和十字鏈表105.設有一個對稱矩陣A,采用壓縮存儲的方式,將其下三角部分以行序為主序存儲到一維數組B中(數組下標從1開始),B數組共有55個元素,則矩陣是(B)階的對稱矩陣。選擇一項:A.20B.10C.15D.5106.設有一個18階的對稱矩陣A,采用壓縮存儲的方式,將其下三角部分以行序為主序存儲到一維數組B中(數組下標從1開始),則數組中第53號元素對應于矩陣中的元素是(B)。選擇一項:A.a7,6B.a10,8C.a8,1D.a8,5107.對稀疏矩陣進行壓縮存儲,可采用三元組表,一個10行8列的稀疏矩陣A共有73個零元素,其相應的三元組表共有(A)個元素。選擇一項:A.7B.10C.8D.80108.廣義表((a))的表尾是(C)。選擇一項:A.(a)B.aC.()D.((a))109.廣義表(a,(a,b),d,e,((i,j),k))的長度和深度分別是(C)。選擇一項:A.6,6B.5,5C.5,3D.6,4110.假定一棵二叉樹中,雙分支結點數為15,單分支結點數為30,則葉子結點數為(A)。選擇一項:A.16B.47C.15D.17111.已知某二叉樹的后續遍歷序列是dabec,中序遍歷是debac,則它的先序遍歷序列是(C)。選擇一項:A.acbedB.deabcC.cedbaD.decab112.二叉樹第k層上最多有()個結點。選擇一項:A.2k-1B.2k-1C.2k-1D.2k113.二叉樹的深度為k,則二叉樹最多有()個結點。選擇一項:A.2kB.2k-1C.2k-1D.2k-1114.設某一二叉樹先序遍歷為abdec,中序遍歷為dbeac,則該二叉樹后序遍歷的順序是(D)。選擇一項:A.abdecB.debacC.abedcD.debca115.設某一二叉樹中序遍歷為badce,后序遍歷為bdeca,則該二叉樹先序遍歷的順序是(D)。選擇一項:A.decabB.debacC.adbecD.abcde116.樹最適合于用來表示(C)。選擇一項:A.順序結構的數據B.元素之間無前驅和后繼關系的數據C.元素之間有包含和層次關系的數據D.線性結構的數據117.一棵非空的二叉樹,先序遍歷與后續遍歷正好相反,則該二叉樹滿足(D)。選擇一項:A.無左孩子B.無右孩子C.任意二叉樹D.只有一個葉子結點118.設a,b為一棵二叉樹的兩個結點,在后續遍歷中,a在b前的條件是(C)。選擇一項:A.a在b上方B.a在b下方C.a在b左方D.a在b右方119.權值為{1,2,6,8}的四個結點構成的哈夫曼樹的帶權路徑長度是(D)。選擇一項:A.19B.18C.28D.29120.如果將給定的一組數據作為葉子數值,所構造出的二叉樹的帶權路徑長度最小,則該樹稱為(D)。選擇一項:A.二叉樹B.完全二叉樹C.平衡二叉樹D.哈夫曼樹121.下列有關二叉樹的說法正確的是(A)。選擇一項:A.二叉樹中度為0的結點的個數等于度為2的結點的個數加1B.二叉樹中結點個數必大于0C.二叉樹的度是2D.完全二叉樹中,任何一個結點的度,或者為0或者為2122.二叉樹是非線性數據結構,所以(C)。選擇一項:A.它不能用鏈式存儲結構存儲B.順序存儲結構和鏈式存儲結構都不能使用C.順序存儲結構和鏈式存儲結構都能存儲D.它不能用順序存儲結構存儲123.任何一棵二叉樹的葉結點在先序、中序和后序遍歷序列中的相對次序(B)。選擇一項:A.發生改變B.不發生改變C.以上都不對D.不能確定124.一棵有n個結點采用鏈式存儲的二叉樹中,共有(A)個指針域為空。選擇一項:A.n+1B.nC.n-1D.n-2125.設一棵哈夫曼樹共有n個非葉結點,則該樹有(B)個葉結點。選擇一項:A.2nB.n+1C.n-1D.n126.一棵完全二叉樹共有5層,且第5層上有六個結點,該樹共有()個結點。選擇一項:A.30B.20C.21D.23127.在一棵二叉樹中,若編號為i的結點是其雙親結點的右孩子,則雙親結點的順序編號為(A)。選擇一項:A.i/2向下取整B.i/C.2i+1D.i/2+1128.一棵采用鏈式存儲的二叉樹中有n個指針域為空,該二叉樹共有(B)個結點。選擇一項:A.n-2B.n-1C.nD.n+1129.一棵結點數31<n<40的完全二叉樹,最后一層有4個結點,則該樹有(B)個葉結點。選擇一項:A.17B.18C.35D.36130.設一棵哈夫曼樹共有2n+1個結點,則該樹有(D)個非葉結點。選擇一項:A.n-1B.2nC.n+1D.n131.在一棵具有35個結點的完全二叉樹中,該樹的深度為(C)。選擇一項:A.7B.8C.6D.5132.在一棵二叉樹中,若編號為i的結點存在左孩子,則左孩子結點的順序編號為(C)。選擇一項:A.2i+2B.2i+1C.2iD.2i-1133.在一棵具有n個結點的二叉樹的第i層上,最多具有()個結點。選擇一項:A.2nB.2iC.2i-1D.2i+1134.以二叉鏈表作為二叉樹的存儲結構,在有n個結點的二叉鏈表中(n>0),鏈表中空鏈域的個數為(B)。選擇一項:A.2n+1B.n+1C.n-1D.2n-1135.將含有150個結點的完全二叉樹從根這一層開始,每一層從左到右依次對結點進行編號,根結點的編號為1,則編號為69的結點的雙親結點的編號為(B)。選擇一項:A.35B.34C.33D.36136.有n個葉子結點的哈夫曼樹的結點總數為(C)。選擇一項:A.不確定B.2n+1C.2n-1D.2n137.下面關于二叉樹的結論正確的是(B)。選擇一項:A.二叉樹中結點的個數必大于0B.二叉樹中,度為0的結點個數等于度為2的結點個數加1C.二叉樹的度是2D.完全二叉樹中,任何一個結點的度,或者為0,或者為2138.在一個圖G中,所有頂點的度數之和等于所有邊數之和的(C)倍。選擇一項:A.1B.4C.2D.1/2139.鄰接表是圖的一種(C)。選擇一項:A.順序存儲結構B.索引存儲結構C.鏈式存儲結構D.散列存儲結構140.如果從無向圖的任一頂點出發進行一次深度優先搜索即可訪問所有頂點,則該圖一定是(D)。選擇一項:A.有回路B.一棵樹C.完全圖D.連通圖141.下列有關圖遍歷的說法不正確的是(A)。選擇一項:A.非連通圖不能用深度優先搜索法B.圖的遍歷要求每一頂點僅被訪問一次C.圖的廣度優先搜索中鄰接點的尋找具有“先進先出”的特征D.連通圖的深度優先搜索是一個遞歸過程142.無向圖的鄰接矩陣是一個(A)。選擇一項:A.對稱矩陣B.上三角矩陣C.零矩陣D.對角矩陣143.圖的深度優先遍歷算法類似于二叉樹的(A)遍歷。選擇一項:A.先序B.后序C.中序D.層次144.已知下圖所示的一個圖,若從頂點V1出發,按深度優先搜索法進行遍歷,則可能得到的一種頂點序列為(A)。選擇一項:A.V1V2V4V8V5V3V6V7B.V1V3V6V7V2V4V5V8C.V1V2V4V5V8V3V6V7D.V1V2V4V8V3V5V6V7145.已知如圖2所示的一個圖,若從頂點a出發,按廣度優先搜索法進行遍歷,則可能得到的一種頂點序列為(D)。選擇一項:A.acfdebB.abcedfC.aebcfdD.abcefd146.已知如圖3所示的一個圖,若從頂點a出發,按深度優先搜索法進行遍歷,則可能得到的一種頂點序列為(A)。選擇一項:A.aedfcbB.aebcfdC.acfebdD.abecdf147.一個具有n個頂點的無向完全圖包含(B)條邊。選擇一項:A.n(n+1)/2B.n(n-1)/2C.n(n-1)D.n(n+1)148.已知如圖7所示的一個圖,若從頂點V1出發,按深廣優先搜索法進行遍歷,則可能得到的一種頂點序列為()。選擇一項:A.V1V2V3V6V7V4V5V8B.V1V2V3V4V5V8V6V7C.V1V2V3V4V8V5V6V7D.V1V2V3V4V5V6V7V8149.采用鄰接表存儲的圖的廣度優先搜索遍歷算法類似于二叉樹的(C)。選擇一項:A.先序遍歷B.后續遍歷C.層次遍歷D.中序遍歷150.下面結論中不正確的是(C)。選擇一項:A.無向圖的鄰接表表示法中,表中結點的數目是圖中邊的條數的2倍B.圖的多重鄰接表表示法中,表中結點的數目等于圖中邊的條數C.一個圖按廣度優先搜索法遍歷的結果是唯一的D.按廣度優先搜索遍歷時,與始點相鄰的結點先于不與始點相鄰的結點訪問151.下面說法不正確的是(C)。選擇一項:A.圖的深度遍歷是一個遞歸過程B.遍歷的基本算法有兩種:深度遍歷和廣度遍歷C.圖的深度遍歷不適用于有向圖D.圖的遍歷是從給定的原點出發每一個頂點僅被訪問一次152.任何一棵無向連通圖的最小生成樹(A)。選擇一項:A.有一棵或多棵B.一定有多棵C.可能不存在D.只有一棵153.在一個具有n個頂點的無向圖中,要連通全部頂點至少需要(D)邊。選擇一項:A.nB.n/2C.n+1D.n-1154.采用鄰接表存儲的圖的深度優先搜索遍歷算法類似于二叉樹的(D)。選擇一項:A.后續遍歷B.層次遍歷C.中序遍歷D.先序遍歷155.線性表只有以(D)方式存儲,才能進行折半查找。選擇一項:A.二叉樹B.關鍵字有序的C.鏈接D.順序156.有序表為{2,4,10,13,33,42,46,64,76,79,85,95,120},用折半查找值為85的結點時,經(A)次比較后成功查到。選擇一項:A.4B.8C.2D.1157.采用順序查找法對長度為n(n為偶數)的線性表進行查找,采用從前向后的方向查找。在等概率條件下成功查找到前n/2個元素的平均查找長度為(A)。選擇一項:A.(n+2)/4B.(n+1)/2C.(2n+1)/4D.n/2158.對二叉排序樹進行(A)遍歷,可以使遍歷所得到的序列是有序序列。選擇一項:A.中序B.按層次C.后序D.前序159.以下說法正確的是(D)。選擇一項:A.二叉排序樹中某一結點的左兒子一定小于樹中任一個結點的右兒子。B.二叉樹的根結點值大于其左子樹結點的值,小于右子樹結點的值,則它是一棵二叉排序樹。C.二叉樹中任一結點的值均大于其左孩子的值,小于其右孩子的值。則它是一棵二叉排序樹。D.二叉排序樹中任一棵子樹都是二叉排序樹。160.對線性表進行二分查找時,要求線性表必需(D)。選擇一項:A.以順序方式存儲B.以鏈接方式存儲C.以鏈接方式存儲,且結點按關鍵字有序排列D.以順序方式存儲,且結點按關鍵字有序排列161.使用折半查找法時,要求查找表中各元素的鍵值必須是(C)排列的。選擇一項:A.無序B.遞減C.遞增或遞減D.遞增162.已知一個有序表為{11,22,33,44,55,66,77,88,99},則順序查找元素55需要比較(C)次。選擇一項:A.6B.4C.5D.3163.有一個長度為10的有序表,按折半查找對該表進行查找,在等概率情況下查找成功的平均比較次數為(A)。選擇一項:A.29/10B.26/10C.29/9D.31/10164.采用分塊查找時,若線性表中共有324個元素,查找每個元素的概率相同,假設采用順序查找來確定結點所在的塊,每塊應分(A)個結點最佳。選擇一項:A.18B.10C.324D.6165.如果要求一個線性表既能較快地查找,又能動態適應變化要求,可以采用(A)查找方法。選擇一項:A.分塊B.散列C.折半D.順序166.關于哈希查找的說法正確的是(C)。選擇一項:A.因為沖突是不可避免的,所以裝填因子越小越好B.刪除一個元素后,不管用哪種方法處理沖突,都只需簡單地把該元素刪除掉C.哈希函數的好壞要根據具體情況而定D.除留余數法是最好的167.采用順序查找方法查找長度為n的線性表時,每個元素的平均查找長度為(C)。選擇一項:A.(n-1)/2B.nC.(n+1)/2D.n/2168.采用分塊查找時,數據的組織方式為(A)。選擇一項:A.把數據分城若干塊,塊內數據不必有序,但塊間必需有序,每塊內最大(或最小)的數據組成索引表B.把數據分城若干塊,每塊(除最后一塊外)中的數據個數相等C.把數據分城若干塊,每塊內數據有序D.把數據分城若干塊,每塊內數據有序,每塊內最大(或最小)的數據組成索引表169.假設在有序線性表A[1..20]上進行折半查找,則比較五次查找成功的結點數為(A)。選擇一項:A.5B.6C.8D.4170.設有1000個無序的元素,希望用最快的速度挑選出其中前10個最大的元素,最好選用(B)排序法。選擇一項:A.快速排序B.堆排序C.冒泡排序D.基數排序171.對數據元素序列(49,72,68,13,38,50,97,27)進行排序,前三趟排序結果時的結果依次為第一趟:49,72,68,13,38,50,97,27;第二趟:49,68,72,13,38,50,97,27;第三趟:13,49,68,72,38,50,97,27。該排序采用的方法是(D)。選擇一項:A.堆排序法B.冒泡排序法C.選擇排序法D.插入排序法172.一組記錄的關鍵字序列為(47,80,57,39,41,46),利用堆排序(堆頂元素是最小元素)的方法建立的初始化堆為(A)。選擇一項:A.39,41,46,80,47,57B.39,80,46,47,41,57C.39,47,46,80,41,57D.41,39,46,47,57,80173.一組記錄的關鍵字序列為(37,70,47,29,31,85),利用快速排序,以第一個關鍵字為分割元素,經過一次劃分后結果為(A)。選擇一項:A.31,29,37,47,77,85B.31,29,37,85,47,70C.31,29,37,70,47,85D.29,31,37,47,70,85174.下述幾種排序方法中,要求內存量最大的是(B)。選擇一項:A.選擇排序B.歸并排序C.插入排序D.快速排序175.若待排序序列在排序前已按關鍵字遞增排列,則采用(A)方法比較次數最多。選擇一項:A.直接插入排序B.直接選擇排序C.歸并排序D.歸并排序176.將兩個各有n個元素的有序表歸并成一個有序表,其最少的比較次數是(C)。選擇一項:A.2n-1B.n-1C.nD.2n177.就排序算法所用的輔助空間而言,堆排序、快速排序、歸并排序的關系是(A)。選擇一項:A.堆排序<快速排序<歸并排序B.堆排序>歸并排序>快速排序C.堆排序>快速排序>歸并排序D.堆排序<歸并排序<快速排序178.一組記錄的關鍵字序列為(25,50,15,35,80,85,20,40,36,70),其中含有5個長度為2的有序表,按歸并排序的方法對該序列進行一趟歸并后的結果為(B)。選擇一項:A.(15,25,35,50,80,20,85,45,70,36)B.(15,25,35,50,20,40,80,85,36,70)C.(15,25,50,35,80,85,20,36,40,70)D.(15,25,35,50,80,20,36,40,70,85)179.對n個元素進行冒泡排序,通常要進行n-1趟冒泡,在第j趟冒泡中共要進行(A)次元素間的比較。選擇一項:A.n-jB.n-j-1C.j-1D.j180.排序方法中,從未排序序列中依次取出元素與已排序序列(初始為空)中的元素進行比較(要求比較次數盡量少),然后將其放入已排序序列的正確位置的方法,是(D)排序。選擇一項:A.直接插入B.冒泡C.選擇排序D.折半插入181.用某種排序方法對線性表(25,84,21,47,15,27,68,35,20)進行排序時,元素序列的變化情況如下:(1)25,84,21,47,15,27,68,35,20(2)20,15,21,25,47,27,68,35,84(3)15,20,21,25,35,27,47,68,84(4)15,20,21,25,27,35,47,68,84則采用的排序方法是(C)。選擇一項:A.插入排序B.選擇排序C.快速排序D.歸并排序182.一組記錄的關鍵字序列為(36,69,46,28,30,84),利用快速排序,以第一個關鍵字為分割元素,經一次劃分后結果為(C)。選擇一項:A.28,30,36,46,69,74B.30,28,36,69,46,74C.30,28,36,46,69,74D.30,28,36,74,46,69183.設已有m個元素有序,在未排好序的序列中挑選第m+1個元素,并且只經過一次元素間的交換,就使第m+1個元素排序到位,該方法是(A)。選擇一項:A.簡單選擇排序B.歸并排序C.冒泡排序D.折半排序184.一組記錄的關鍵字序列為(46,79,56,38,40,45),利用堆排序(堆頂元素是最小元素)的方法建立的初始堆為(B)。選擇一項:A.38,79,45,46,40,56B.38,40,45,79,46,56C.38,46,45,79,40,56D.40,38,45,46,56,79185.已知10個數據元素為(54,28,16,34,73,62,95,60,26,43),對該數列從小到大排序,經過一趟冒泡排序后的序列為(B)。選擇一項:A.28,16,34,54,62,60,73,26,43,95B.28,16,34,54,62,73,60,26,43,95C.16,28,34,54,62,60,73,26,43,95D.16,28,34,54,73,62,60,26,43,95186.對具有n個元素的任意序列采用插入排序法進行排序,排序趟數為(A)。選擇一項:A.n-1B.log2nC.nD.n+1187.把數據存儲到計算機中,并具體體現數據元素間的邏輯結構稱為(D)。選擇一項:A.給相關變量分配存儲單元B.邏輯結構C.算法的具體實現D.物理結構188.下列說法中,不正確的是(C)。選擇一項:A.數據項是數據中不可分割的最小可標識單位B.數據可有若干個數據元素構成C.數據項可由若干個數據元素構成D.數據元素是數據的基本單位189.一個存儲結點存儲一個(B)。選擇一項:A.數據類型B.數據元素C.數據項D.數據結構190.數據結構中,與所使用的計算機無關的是數據的(C)。選擇一項:A.存儲結構B.物理結構C.邏輯結構D.物理和存儲結構191.在線性表的順序結構中,以下說法正確的是(A)。選擇一項:A.邏輯上相鄰的元素在物理位置上也相鄰B.數據元素是不能隨機訪問的C.邏輯上相鄰的元素在物理位置上不一定相鄰D.進行數據元素的插入、刪除效率較高192.對鏈表,以下敘述中正確的是(A)。選擇一項:A.不能隨機訪問任一結點B.插入刪除元素的操作一定要要移動結點C.結點占用的存儲空間是連續的D.可以通過下標對鏈表進行直接訪問193.下列的敘述中,不屬于算法特性的是(A)。選擇一項:A.可讀性B.可行性C.有窮性D.輸入性194.算法的時間復雜度與(D)有關。選擇一項:A.所使用的計算機B.數據結構C.計算機的操作系統D.算法本身195.設有一個長度為n的順序表,要在第i個元素之前(也就是插入元素作為新表的第i個元素),插入一個元素,則移動元素個數為(A)。選擇一項:A.n-i+1B.n-i-1C.iD.n-i196.設有一個長度為n的順序表,要刪除第i個元素移動元素的個數為(B)。選擇一項:A.n-i+1B.n-iC.iD.n-i-1197.在一個單鏈表中,p、q分別指向表中兩個相鄰的結點,且q所指結點是p所指結點的直接后繼,現要刪除q所指結點,可用語句(A)。選擇一項:A.p->next=q->nextB.p=q->nextC.q->next=NULLD.p->next=q198.在一個單鏈表中p所指結點之后插入一個s所指的結點時,可執行(B)。選擇一項:A.p->next=s->next;B.s->next=p->next;p->next=s;C.p=s->nextD.p->next=s;s->next=p->next199.非空的單向循環鏈表的尾結點滿足(B)(設頭指針為head,指針p指向尾結點)。選擇一項:A.p==NULLB.p->next==headC.p->next==NULLD.p==head200.鏈表不具有的特點是(B)。選擇一項:A.不必事先估計存儲空間B.可隨機訪問任一元素C.邏輯上相鄰的元素在物理位置上不一定相鄰D.插入刪除不需要移動元素201.帶頭結點的鏈表為空的判斷條件是(D)(設頭指針為head)。選擇一項:A.head==NULLB.head!=NULLC.head->next==headD.head->next==NULL202.在一個長度為n的順序表中為了刪除第5個元素,由第6個元素開始從后到前依次移動了15個元素。則原順序表的長度為(C)。選擇一項:A.25B.19C.20D.21203.有關線性表的正確說法是(A)。選擇一項:A.除了一個和最后一個元素外,其余元素都有一個且僅有一個直接前驅和一個直接后繼B.表中的元素必須按由小到大或由大到下排序C.每個元素都有一個直接前驅和一個直接后繼D.線性表至少要求一個元素204.向一個有127個元素的順序表中插入一個新元素,并保持原來的順序不變,平均要移動(C)個元素。選擇一項:A.63B.8C.D.7205.一個順序表第一個元素的存儲地址是90,每個元素的長度為2,則第6個元素的地址是(A)。選擇一項:A.100B.98C.102D.106206.在一個不帶頭結點的單循環鏈表中,p、q分別指向表中第一個結點和尾結點,現要刪除第一個結點,且p、q仍然分別指向新表中第一個結點和尾結點。可用的語句是p=p->next;和(D)。選擇一項:A.q=pB.p=q->nextC.p->next=qD.q->next=p207.數據元素可以有一個或多個數據項組成。選擇一項:對對錯208.數據元素之間的抽象關系稱為物理結構。選擇一項:錯對錯209.數據的邏輯結構在計算機中的表示稱為邏輯結構。選擇一項:錯對錯210.數據的邏輯結構是與存儲該結構的計算機相關的。選擇一項:錯對錯211.數據結構中,元素之間存在多對多的關系稱為樹狀結構。選擇一項:錯對錯212.通常可以把一本含有不同章節的書的目錄結構抽象成線性結構。選擇一項:錯對錯213.通常可以把某城市中各公交站點間的線路圖抽象成樹型結構。選擇一項:錯對錯214.設有一個不帶頭結點的單向循環鏈表,結點的指針域為next,指針p指向尾結點,現要使p指向第一個結點,可用語句p=p->next;。對選擇一項:對錯215.設有一個單向鏈表,結點的指針域為next,頭指針為head,p指向尾結點,為了使該單向鏈表改為單向循環鏈表,可用語句p->next=head。選擇一項:對對錯216.設有一個單向循環鏈表,結點的指針域為next,頭指針為head,指針p指向表中某結點,若邏輯表達式p->next==head;的結果為真,則p所指結點為尾結點。選擇一項:對對錯217.要在一個單向鏈表中p所指向的結點之后插入一個s所指向的新結點,若鏈表中結點的指針域為next,可執行p->next=s;s->next=p->next;的操作。選擇一項:錯對錯218.要在一個單向鏈表中刪除p所指向的結點,已知q指向p所指結點的直接前驅結點,若鏈表中結點的指針域為next,則可執行q->next=p->next;選擇一項:對錯219.要在一個帶頭結點的單向循環鏈表中刪除頭結點,得到一個新的不帶頭結點的單向循環鏈表,若結點的指針域為next,頭指針為head,尾指針為p,則可執行head=head->next;p->next=head;。選擇一項:對對錯220.設有一個單向循環鏈表,頭指針為head,鏈表中結點的指針域為next,p指向尾結點的直接前驅結點,若要刪除尾結點,得到一個新的單向循環鏈表,可執行操作p->next=head;。選擇一項:對對錯221.設線性表以不帶頭結點的單向鏈表存儲,鏈表頭指針為head,以下程序的功能是輸出鏈表中各結點中的數據域data,完成程序中空格部分。#defineNULL0voidmain(){NODE*head,*p;p=head;/*p為工作指針*/do{printf(“%d\n”,空白;空白;}while空白;}?>data;=p?>next;!=NULL;222.設有一個頭指針為head的不帶頭結點單向鏈表,p、q是指向鏈表中結點類型的指針變量,p指向鏈表中結點a,(設鏈表中沒有結點的數據域與結點a的數據域相同),寫出相關語句(1)使該單向鏈表成為單向循環鏈表(2)插入結點s,使它成為a結點的直接前驅q=p;x=p->data;while空白)q=q->next;q->next=head;q=p;p=p->next;while(p->data!=x){q=p;空白}s->next=p;?>next!=NULL;2.p=p?>next;?>next=s223.若讓元素1,2,3依次進棧,則出棧順序不可能為(A)。選擇一項:A.3,1,2B.2,1,3C.1,3,2D.3,2,1224.一個隊列的入隊序列是1,2,3,4。則隊列的輸出序列是()。選擇一項:A.3,2,4,1B.1,4,3,2C.1,2,3,4D.4,3,2,1225.向順序棧中壓入新元素時,應當()。選擇一項:A.先存入元素,再移動棧頂指針B.先移動棧頂指針,再存入元素C.同時進行D.先后次序無關緊要226.在一個棧頂指針為top的鏈棧中,將一個p指針所指的結點入棧,應執行()。選擇一項:A.p->next=top->next;top->next=p;B.p->next=top->next;top=top->next;C.top->next=p;D.p->next=top;top=p;227.在一個棧頂指針為top的鏈棧中刪除一個結點時,用x保存被刪結點的值,則執行()。選擇一項:A.x=top;top=top->next;B.x=top->data;C.top=top->next;x=top->data;D.x=top->data;top=top->next;228.判斷一個順序隊列(最多元素為m)為空的條件是()。選擇一項:A.rear=mB.front==rear+1C.front==rearD.rear==m-1229.判斷一個循環隊列為滿的條件是()。選擇一項:A.(rear+1)%MaxSize==frontB.front==rear+1C.rear=MaxSizeD.rear%MaxSize==front230.判斷棧滿(元素個數最多n個)的條件是()。選擇一項:A.top==0B.top=-1C.top!=0D.top==n-1231.設有一個20階的對稱矩陣A(第一個元素為a1,1),采用壓縮存儲的方式,將其下三角部分以行序為主序存儲到一維數組B中(數組下標從1開始),則矩陣元素a6,2在一維數組B中的下標是()。選擇一項:A.21B.28C.17D.23232.在解決計算機主機與打印機之間速度不匹配問題時通常設置一個打印數據緩沖區,主機將要輸出的數據依次寫入緩沖區中,而打印機則從緩沖區中取出數據打印,該緩沖區應該是一個(C)結構。選擇一項:A.堆棧B.線性表C.隊列D.數組233.一個遞歸算法必須包括(D)。選擇一項:A.遞歸部分B.迭代部分C.終止條件和迭代部分D.終止條件和遞歸部分234.在一個鏈隊中,假設f和r分別為隊頭和隊尾指針,則刪除一個結點的運算為(B)。選擇一項:A.r=r->next;B.f=f->next;C.r=f->next;D.f=r->next;235.在一個鏈隊中,假設f和r分別為隊頭和隊尾指針,則插入s所指結點的運算為(D)。選擇一項:A.s->next=r;r=s;B.f->next=s;f=s;C.s->next=f;f=s;D.r->next=s;r=s;236.數組a經初始化chara[]=“English”;a[7]中存放的是(A)。選擇一項:A.字符串的結束符B.變量hC.字符hD."h"237.設主串為“ABcCDABcdEFaBc”,以下模式串能與主串成功匹配的是(C)。選擇一項:A.BCdB.AbcC.BcdD.ABC238.字符串a1="AEIJING",a2="AEI",a3="AEFANG",a4="AEFI"中最大的是(B)。選擇一項:A.a2B.a1C.a4D.a3239.兩個字符串相等的條件是(A)。選擇一項:A.兩串的長度相等,并且對應位置上的字符相同B.兩串的長度相等,并且兩串包含的字符相同C.兩串包含的字符相同D.兩串的長度相等240.一維數組A采用順序存儲結構,每個元素占用6個字節,第6個元素的存儲地址為100,則該數組的首地址是(B)。選擇一項:A.28B.70C.64D.90241.一個非空廣義表的表頭(A)。選擇一項:A.可以是子表或原子B.只能是原子C.不可能是原子D.只能是子表242.對稀疏矩陣進行壓縮存儲,可采用三元組表,一個10行8列的稀疏矩陣A,其相應的三元組表共有6個元素,矩陣A共有(A)個零元素。選擇一項:A.74B.8C.10D.72243.對稀疏矩陣進行壓縮存儲,可采用三元組表,一個10行8列的稀疏矩陣A共有73個零元素,A的右下角元素為6,其相應的三元組表中的第7個元素是(D)。選擇一項:A.(7,8,10)B.(7,10,8)C.(10,8,7)D.(10,8,6)244.對稀疏矩陣進行壓縮存儲,可采用三元組表,一個10行8列的稀疏矩陣A共有73個零元素,A的右下角元素為6,其相應的三元組表中的第7個元素是(A)。選擇一項:A.(7,8,10)B.(7,10,8)C.(10,8,7)D.(10,8,6)245.頭指針為head的帶頭結點的單向鏈表為空的判定條件是(C)為真。選擇一項:A.head==NULLB.head->next!=NULLC.head->next==NULLD.head->next!=NULL246.設有一個對稱矩陣A,采用壓縮存儲的方式,將其下三角部分以行序為主序存儲到一維數組B中(數組下標從1開始),B數組共有55個元素,則該矩陣是(C)階的對稱矩陣。選擇一項:A.20B.15C.10D.5247.數組a經初始化chara[]=“English”;a[1]中存放的是(D)。選擇一項:A."E"B."n"C.字符ED.字符n248.設有一個鏈棧,棧頂指針為hs,現有一個s所指向的結點要入棧,則可執行操作。hs=s;s->next=hs;選擇一項:錯對錯249.設有一個非空的鏈棧,棧頂指針為hs,要進行出棧操作,用x保存出棧結點的值,棧結點的指針域為next,則可執行hs=hs->next;x=hs->data;選擇一項:錯對錯250.有一個鏈棧,棧頂指針為h,現有一個p所指向的結點要入棧,則可執行操作p->next=h;和h=p;選擇一項:對對錯251.設有一個非空的鏈棧,棧頂指針為hs,要進行出棧操作,用x保存出棧結點的值,棧結點的指針域為next,數據域為data,則可執行hs=hs->next;x=hs->data;選擇一項:錯對錯252.在一個鏈隊中,f和r分別為隊頭和隊尾指針,隊結點的指針域為next,則插入所指結點的操作為r->next=s;r=s;選擇一項:對對錯253.在一個鏈隊中,f和r分別為隊頭和隊尾指針,隊結點的指針域為next,s指向一個要入隊的結點,則入隊操作為r=s;r->next=s;選擇一項:錯對錯254.在一個不帶頭結點的非空鏈隊中,f和r分別為隊頭和隊尾指針,隊結點的數據域為data,指針域為next,若要進行出隊操作,并用變量x存放出隊元素的數據值,則相關操作為x=f->data;f=f->next;選擇一項:對對錯255.對稀疏矩陣進行壓縮存儲,可采用三元組表,一個6行7列的稀疏矩陣A相應的三元組表共有8個元素,則矩陣A共有34個零元素。選擇一項:對對錯256.循環隊列的最大存儲空間為MaxSize,隊頭指針為f,隊尾指針為r,當(r+1)%MaxSize=f時表明隊列已滿。對選擇一項:對錯257.循環隊列的隊頭指針為f,隊尾指針為r,當r==f時表明隊列已滿。選擇一項:錯對錯258.空串的長度是0;空格串的長度是空格字符的個數。選擇一項:對對錯259.對稀疏矩陣進行壓縮存儲,矩陣中每個非零元素對應的三元組包括該元素的行下標、列下標、和非零元素值三項信息。對選擇一項:對錯260.循環隊列的引入,目的是為了克服假上溢。選擇一項:對對錯261.設有n階對稱矩陣A,用一維數組s壓縮存儲A的下三角元素,s的下標從零開始,元素s[26]相應于A中的元素為a7,5。選擇一項:錯對錯262.循環隊列的最大存儲空間為MaxSize=6,采用少用一個元素空間以有效的判斷棧空或棧滿,若隊頭指針front=4,當隊尾指針rear=3時隊滿。選擇一項:對對錯263.循環隊列的最大存儲空間為MaxSize=6,采用少用一個元素空間以有效的判斷棧空或棧滿,若隊頭指針front=4,隊尾指針rear=3時,隊列中共有5個元素。選擇一項:對對錯264.以下函數為鏈棧的進棧操作,x是要進棧的結點的數據域,top為棧頂指針structnode{ElemTypedata;structnode*next;};structnode*top;voidPush(ElemTypex){structnode*p;p=(structnode*)malloc空白;p->data=x;空白;空白;}(structnode)Bp?>next=topCtop=p265.以下函數為鏈隊列的入隊操作,x為要入隊的結點的數據域的值,front、rear分別鏈隊列的隊頭、隊尾指針structnode{ElemTypedata;structnode*next;};structnode*front,*rear;voidInQueue(ElemTypex){structnode*p;p=(structnode*)malloc空白;p->data=x;p->next=NULL;空白;rear=空白;}A(sizeof(structnode)Brear?>next=pCp266.假定一棵二叉樹中,雙分支結點數為15,單分支結點數為30,則葉子結點數為(B)。選擇一項:A.17B.16C.47D.15267.268.將含有150個結點的完全二叉樹從根這一層開始,每一層從左到右依次對結點進行編號,根結點的編號為1,則編號為69的結點的雙親結點的編號為(B)。選擇一項:A.33B.34C.35D.36269.如果將給定的一組數據作為葉子數值,所構造出的二叉樹的帶權路徑長度最小,則該樹稱為(A)。選擇一項:A.哈夫曼樹B.平衡二叉樹C.完全二叉樹D.二叉樹270.在一棵度具有5層的滿二叉樹中結點總數為(C)。選擇一項:A.33B.16C.31D.32271.一棵完全二叉樹共有6層,且第6層上有6個結點,該樹共有(B)個結點。選擇一項:A.72B.37C.38D.31272.利用3、6、8、12這四個值作為葉子結點的權,生成一棵哈夫曼樹,該樹中所有葉子結點中的最長帶權路徑長度為(D)。選擇一項:A.12B.30C.16D.18273.在一棵樹中,(C)沒有前驅結點。選擇一項:A.分支結點B.葉結點C.樹根結點D.空結點274.設一棵采用鏈式存儲的二叉樹,除葉結點外每個結點度數都為2,該樹結點中共有20個指針域為空,則該樹有(A)個葉結點。選擇一項:A.10B.9C.21D.22275.在一個圖G中,所有頂點的度數之和等于所有邊數之和的(B)倍。選擇一項:A.1/2B.2C.1D.4276.鄰接表是圖的一種()。選擇一項:A.鏈式存儲結構B.順序存儲結構C.散列存儲結構D.索引存儲結構277.圖的深度優先遍歷算法類似于二叉樹的(C)遍歷。選擇一項:A.中序B.后序C.先序D.層次278.已知下圖所示的一個圖,若從頂點V1出發,按深度優先搜索法進行遍歷,則可能得到的一種頂點序列為(C)。選擇一項:A.V1V3V6V7V2V4V5V8B.V1V2V4V5V8V3V6V7C.V1V2V4V8V5V3V6V7D.V1V2V4V8V3V5V6V7279.已知如下圖所示的一個圖,若從頂點a出發,按廣度優先搜索法進行遍歷,則可能得到的一種頂點序列為(C)。選擇一項:A.aedfcbB.aebcfdC.aecbdfD.abecdf280.圖狀結構中數據元素的位置之間存在(D)的關系。選擇一項:A.每一個元素都有一個且只有一個直接前驅和一個直接后繼B.一對一C.一對多D.多對多281.在一棵二叉樹中,若編號為i的結點存在右孩子,則右孩子的順序編號為(A)。選擇一項:A.2i+1B.2iC.2i-1D.2i+2282.一棵具有16個結點的完全二叉樹,共有(B)層。(設根結點在第一層)選擇一項:A.7B.5C.6D.4283.對二叉排序樹進行(C)遍歷,可以使遍歷所得到的序列是有序序列。選擇一項:A.中序B.后序C.前序D.按層次284.已知一個圖的邊數為m,則該圖的所有頂點的度數之和為(A)。選擇一項:A.2mB.mC.2m+1D.m/2285.一棵二叉樹的葉結點(終端結點)數為5,單分支結點數為2,該樹共有11個結點。選擇一項:對對錯286.一棵有14個結點的完全二叉樹,則它的最高層上有7個結點。選擇一項:對對錯287.一棵二叉樹有6個葉結點,則該樹總共有11個結點。選擇一項:錯對錯288.根據搜索方法的不同,圖的遍歷有.先序;中序;后序三種方法。選擇一項:錯對錯289.對于一棵具有n個結點的二叉樹,其相應的鏈式存儲結構中共有n-1個指針域空。選擇一項:錯對錯290.設一棵完全二叉樹,其最高層上最右邊的葉結點的編號為奇數,該葉結點的雙親結點的編號為10,該完全二叉樹一共有21個結點。對選擇一項:對錯291.設一棵完全二叉樹,其最高層上最右邊的葉結點的編號為偶數,該葉結點的雙親結點的編號為9,該完全二叉樹一共有19個結點。選擇一項:錯對錯292.按照二叉樹的遞歸定義,對二叉樹遍歷的常用算法有深度優先遍歷和深度優先遍兩種方法。選擇一項:錯對錯293.一棵有8個權重值構造的哈夫曼數,共有17個結點。選擇一項:錯對錯294.一棵有7個葉結點的二叉樹,其1度結點數的個數為2,則該樹共有15個結點。選擇一項:對對錯295.以下程序是后序遍歷二叉樹的遞歸算法的程序,完成程序中空格部分(樹結構中左、右指針域分別為left和right,數據域data為字符型,BT指向根結點)。完成程序中空格部分。voidInorder(structBTreeNode*BT){if(BT!=NULL){Inorder(BT->left);空白空白}利用上述程序對左圖進行后序遍歷,結果是空白;1.Inorder(BT?>right)(“%c”,BT?>data),e,b,f,c,a296.以下程序是中序遍歷二叉樹的遞歸算法的程序,完成程序中空格部分(樹結構中左、右指針域分別為left和right,數據域data為字符型,BT指向根結點)。voidInorder(structBTreeNode*BT){if(BT!=NULL){Inorder(BT->left);}空白;空白;}利用上述程序對右圖進行中序遍歷,結果是空白;(“%c”,BT?>data)2.Inorder(BT?>right)3.d,b,e,a,f,c297.(1)以3,4,5,8,9,作為葉結點的權,構造一棵哈夫曼樹。該樹的帶權路徑長度為回答BA,64C.62D.66(2)權重為3的葉結點的哈夫曼編碼為回答C298.(1)以2,3,4,7,8,9作為葉結點的權,構造一棵哈夫曼樹,該樹的帶權路徑長度為回答BA,66B.80C.62D.87(2)權重值為4的葉結點的哈夫曼編碼為回答CB.1110D.110299.(1)已知某二叉樹的后序遍歷序列是debca,中序遍歷序列是dbeac,該二叉樹的根結點是回答DA.eB.cC.bD.a(2)先序遍歷序列是回答CA.e,b,c,d,aB.c,a,b,,d,eC.a

溫馨提示

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

評論

0/150

提交評論