【數據結構】真題 2016

待補充

已知表頭元素為c的單鏈表在內存中的存儲狀態如下表所示

地址元素鏈接地址
1000H

a

1010H
1004Hb100CH
1008Hc

1000H

100CHdNULL
1010He1004H
1014H

現將f存放于1014H處并插入到單鏈表中,若f在邏輯上位于a和e之間,則a, e, f的“鏈接地址”依次是( )。

A. 1010H, 1014H, 1004H

B. 1010H, 1004H, 1014H

C. 1014H, 1010H, 1004H

D. 1014H, 1004H, 1010H

D

l鏈接地址,即每一個元素的下一個地址

c\rightarrow a\rightarrow e\rightarrow b....

c\rightarrow a\rightarrow f(1014H)\rightarrow e\rightarrow b

2.已知一個帶有表頭結點的雙向循環鏈表L,結點結構為prev|data|next,prev和next分別是指向其直接前驅和直接后繼結點的指針。現要刪除指針p所指的結點,正確的語句序列是( )。

A. p->next->prev = p->prev; p->prev->next = p->prev; free(p);

B. p->next->prev = p->next; p->prev->next = p->next; free(p);

C. p->next->prev = p->next; p-> prev->next = p->prev; free(p);

D. p->next->prev = p->prev; p->prev->next = p->next; free(p);

D

3.設有下圖所示的火車車軌,入口到出口之間有?n?條軌道,列車的行進方向均為從左至右,列車可駛入任意一條軌道。現有編號為1~9的9列列車,駛入的次序依次是8, 4, 2, 5, 3, 9, 1, 6, 7。若期望駛出的次序依次為1~9,則?n?至少是( )

A. 2

B. 3

C. 4

D. 5

C

隊列

9 8?
7 6 5 4
3 2
1

4.有一個100階的三對角矩陣M?,其元素?mi,j(1≤i≤100,1≤j≤100)?按行優先依次壓縮存入下標從0開始的一維數組?N?中。元素?m30,30?在數組?N?中的下標是( )。

A. 86

B. 87

C. 88

D. 89

B

公式法 k=2i+j-3

\begin{vmatrix} a_{11}&a_{12} &...&... &...\\ a_{21}&a_{22} &a_{23}&... &...\\ ...& a_{32}&a_{33}&a_{34}&... \\ ...&...&...&...&...& \end{vmatrix}

a11? N=0=3*(1-1)

a22 N=3=3*(2-1)

a33 N=6=3*(3-1)

某元素前元素總個數=3*(元素所在的行數-1)

3*(30-1)=87

5.若森林F有15條邊、25 個結點,則F包含樹的個數是( )。

A. 8

B. 9

C. 10

D. 11

C

n個結點的樹有n-1條邊(每棵樹的結點數比邊數多1)

題中森林F中結點數比邊數多25-15=10個,即共有10棵樹?

6.下列選項中,不是下圖深度優先搜索序列的是( )

A.?V1,V5,V4,V3,V2

B.?V1,V3,V2,V5,V4

C.?V1,V2,V5,V4,V3

D.?V1,V2,V3,V4,V5

D

深度優先搜索,從V1開始,可以先訪問V2(V3或V5也可以),但V2到V3與圖中箭頭正好相反,無法訪問,D錯誤


深度優先搜索就是一個“一條路走到黑”的搜索策略,直到無路可走才開始回溯,找到前一個能夠繼續搜索的結點重復上述步驟

7.若將?n?個頂點?e?條弧的有向圖采用鄰接表存儲,則拓撲排序算法的時間復雜度是( )。

A.?O(n)

B.?O(n+e)

C.?O(n2)

D.?O(ne)

B

把整個鏈接表都遍歷一遍,遍歷n個頂點和邊,且n個頂點,一共e條邊,逐個遍歷一遍,時間復雜度為O(n+e)

撲排序需要輸出圖中所有頂點,也就是意味著必須要對圖進行遍歷,圖的遍歷最常用的就是深度優先搜索和廣度優先搜索。

  • 深度優先搜索算法是一種自底向上 (bottom up)?的算法,即按照逆拓撲排序的順序遍歷圖。
  • 廣度優先搜索算法是一種自頂向下 (top down)?的算法,即按照拓撲排序的順序遍歷圖。

而深度優先搜索和廣度優先搜索都是完全遍歷的具體實現,可以忽略算法實現細節,從整體入手

8.使用迪杰斯特拉(Djkstra)算法求下圖中從頂點?1?到其他各頂點的最短路徑,依次得到的各最短路徑的目標頂點是( )

A. 5, 2, 3, 4, 6

B. 5, 2, 3, 6, 4

C. 5, 2, 4, 3, 6

D. 5, 2, 6, 3, 4

B

V1? ? ? ? V5? ? ? ? V2? ? ? ? V3? ? ? ? V6????????V4

123456S
0\infty\infty\infty\infty\infty{1}
05\infty1149{1,5}
05\infty1149{1,5,2}
0571149{1,5,2,3}
0571149{1,5,2,3,6}
0571149{1,5,2,3,6,4}

9.在有?n(n>1000)?個元素的升序數組?A?中查找關鍵字?x?。查找算法的偽代碼如下所示。

k = 0; 
while (k < n 且 A[k] < x) k = k + 3;
if (k < n 且 A[k] == x) 查找成功;
else if (k - 1 < n 且 A[k - 1] == x) 查找成功;
else if (k - 2 < n 且 A[k - 2] == x) 查找成功;
else 查找失敗;

本算法與折半查找算法相比,有可能具有更少比較次數的情形是( )。

A. 當?x?不在數組中

B. 當?x?接近數組開頭處

C. 當?x?接近數組結尾處

D. 當?x?位于數組中間位置

B

采用跳躍式順序查找法查找升序數組中的關鍵字x,x越靠前,比較次數越少

折半查找就是把數組每次分成兩半,從中間查找關鍵字

10.B+樹不同于B樹的特點之一是( )。

A. 能支持順序查找

B. 結點中含有關鍵字

C. 根結點至少有兩個分支

D. 所有葉結點都在同一層上

A

B+樹支持順序查找,且葉結點從小到大鏈接而成,B樹不能支持順序查找,只支持多路查找


B+樹和B樹的區別主要有兩點:

  • B+樹的非葉結點不存儲關鍵字,只作為索引使用,而B樹的非葉結點存儲關鍵字,所以B+樹的所有葉結點中包含了全部的關鍵字信息,但B樹不一定
  • B+樹上的葉結點存儲關鍵字以及相應記錄的指針,葉結點中將關鍵字按大小順序排列,并且相鄰葉結點按大小順序互相鏈接起來。所以B+樹支持兩種查找運算:一種是從最小關鍵字開始的順序查找,另一種是從根結點開始的多路查找。但B樹只支持從根節點開始的多路查找

11.對 10 TB 的數據文件進行排序,應使用的方法是( )。

A. 希爾排序

B. 堆排序

C. 快速排序

D. 歸并排序

D

希爾排序、堆排序、快速排序都是內部排序

由題可知是要對磁盤或外存里較大的數據進行排序,使用外部排序,外部排序通常使用歸并排序(將所有數據切分成多個歸并段,首先對每個歸并段進行內部排序得到較短的有序序列,然后將多個歸并段合并得到更長的有序序列,重復合并步驟最終可以得到完整的有序序列)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/91265.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/91265.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/91265.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

雙線串行的 “跨界對話”:I2C 與 MDIO 的異同解析

在電子系統設計中,串行總線憑借其精簡的信號線數量和靈活的拓撲結構,成為芯片間通信的主流選擇。I2C(Inter-Integrated Circuit)和 MDIO(Management Data Input/Output)作為兩種典型的雙線串行總線,雖同屬低速信號范疇,卻在各自的應用領域扮演著不可替代的角色。本文將…

算法精講:二分查找(二)—— 變形技巧

&#x1f3af; 算法精講&#xff1a;二分查找&#xff08;二&#xff09;—— 變形技巧 &#x1f50d; 友情提示&#xff1a;&#xff1a;本小節含高能代碼片段 &#x1f964; 閱讀前請確保已掌握基礎二分原理與實現代碼片段可能包含不同程度的變形&#xff0c;請根據實際情況選…

兩個程序配合實現了基于共享內存和信號量的進程間通信,具體說明如下:

第一個程序&#xff1a;共享內存讀取程序&#xff08;消費者&#xff09;該程序作為消費者&#xff0c;從共享內存中讀取數據&#xff0c;通過信號量保證只有當生產者寫入數據后才能讀取。/*4 - 讀共享內存*/ #include<stdio.h> // 標準輸入輸出庫 #inc…

JeecgBoot(1):前后臺環境搭建

1 項目介紹 JeecgBoot 是一款基于 Java 的 AI 低代碼平臺&#xff0c;它采用了 SpringBoot、SpringCloud、Ant Design Vue3、Mybatis 等技術棧&#xff0c;并集成了代碼生成器、AI 對話助手、AI 建表、AI 寫文章等功能。JeecgBoot 的設計宗旨是實現簡單功能零代碼開發&#xf…

Nestjs框架: 關于 OOP / FP / FRP 編程

概述 在軟件開發過程中&#xff0c;不同的編程范式為我們提供了多樣化的思維方式與實現路徑它們不僅影響著代碼的結構和邏輯組織方式&#xff0c;也深刻影響著項目的可維護性、可擴展性以及團隊協作效率 什么是 OOP、FP 和 FRP&#xff1f;首先從三個術語的含義入手 1 &#xf…

elememtor 添加分頁功能

各位看官好&#xff0c;最近在忙著使用elementor搭建自己的網站&#xff0c;由于我不是專業的程序員和前端&#xff0c;又沒有很多錢去找外包公司實現自己的設計&#xff0c;所以選擇了elementor. 總的來說這是一個不錯的wordpress 插件&#xff0c;也讓我們這種非專業的網站設…

關于“PromptPilot” 之2 -目標系統:Prompt構造器

目標系統&#xff1a;Prompt構造器想法首先&#xff0c;在抽象層對PromptPilot進行封裝給出提示詞形成過程的全部環節。然后&#xff0c;在 形成一套確定的提示詞后再為 小規模試點方案生成一整套開發工具并配套集成開發環境和指南。最后&#xff0c;在小規模試點成功后進行拓展…

短劇小程序系統開發:重塑影視內容消費格局

在數字化浪潮的推動下&#xff0c;影視內容消費正經歷著深刻的變革。短劇小程序系統開發作為這一變革的重要力量&#xff0c;正在重塑影視內容消費的格局&#xff0c;為用戶帶來更加個性化、便捷化的觀影體驗。傳統影視內容消費往往受到時間和空間的限制&#xff0c;用戶需要前…

一文掌握最新版本Monocle3單細胞軌跡(擬時序)分析

許多大佬的軟件想要構建一個大而美的生態&#xff0c;從 monocle2 開始就能做單細胞的質控、降維、分群、注釋這一系列的分析&#xff0c;但不幸的是我們只知道 monocle 系列還是主要做擬時序分析&#xff0c;一方面是因為 Seurat 有先發優勢&#xff0c;出名要趁早&#xff0c…

spark入門-helloword

我們學習編程語言的時候&#xff0c;第一個程序就是打印一下 “hello world” &#xff0c;對于大數據領域的第一個任務則是wordcount。那我們就開始我們的第一個spark任務吧&#xff01; 下載spark 官方下載地址&#xff1a;Apache Download Mirrors 下載完畢以后&#xff0c…

雷達系統設計學習:自制6GHz FMCW Radar

國外大神自制6GHZ FMCW Radar開源項目: https://github.com/Ttl/fmcw3 引言 之前我做過一個簡單的調頻連續波&#xff08;FMCW&#xff09;雷達&#xff0c;能夠探測到100米范圍內人體大小的物體。雖然它確實能用&#xff0c;但由于預算有限&#xff0c;還有很大的改進空間。 …

系統選擇菜單(ubuntu grub)介紹

好的&#xff0c;我們來詳細解釋一下什么是Ubuntu的GRUB菜單。 簡單來說&#xff0c;GRUB菜單是您電腦啟動時看到的第一個交互界面&#xff0c;它就像一個“系統選擇”菜單&#xff0c;讓您決定接下來要啟動哪個操作系統或進入哪種模式。詳細解釋 1. GRUB是什么&#xff1f; GR…

方案C,version2

實現一個簡單的Helloworld網頁,并通過GitHub Actions自動構建并推送到公開倉庫的gh-pages分支。同時,使用PAT進行認證,確保源碼在私有倉庫中,構建后的靜態文件在公開倉庫中。 重新設計deploy.yml內容如下(針對純靜態文件,無需構建過程): 步驟: 檢出私有倉庫源碼。 由于…

R 語言科研繪圖 --- 其他繪圖-匯總1

在發表科研論文的過程中&#xff0c;科研繪圖是必不可少的&#xff0c;一張好看的圖形會是文章很大的加分項。 為了便于使用&#xff0c;本系列文章介紹的所有繪圖都已收錄到了 sciRplot 項目中&#xff0c;獲取方式&#xff1a; R 語言科研繪圖模板 --- sciRplothttps://mp.…

webpack 原理及使用

【點贊收藏加關注,前端技術不迷路~】 一、webpack基礎 1.核心概念 1)entry:定義入口,webpack構建的第一步 module.exports ={entry:./src/xxx.js } 2)output:出口(輸出) 3)loader:模塊加載器,用戶將模塊的原內容按照需求加載成新內容 比如文本加載器raw-loade…

「日拱一碼」039 機器學習-訓練時間VS精確度

目錄 時間-精度權衡曲線&#xff08;不同模型復雜度&#xff09; 訓練與驗證損失對比 帕累托前沿分析&#xff08;3D&#xff09; 在機器學習實踐中&#xff0c;理解模型收斂所需時間及其與精度的關系至關重要。下面介紹如何分析模型收斂時間與精度之間的權衡&#xff0c;并…

面試刷題平臺項目總結

項目簡介&#xff1a; 面試刷題平臺是一款基于 Spring Boot Redis MySQL Elasticsearch 的 面試刷題平臺&#xff0c;運用 Druid HotKey Sa-Token Sentinel 提高了系統的性能和安全性。 第一階段&#xff0c;開發基礎的刷題平臺&#xff0c;帶大家熟悉項目開發流程&#xff…

負載均衡、算法/策略

負載均衡一、負載均衡層級對比特性四層負載均衡 (L4)七層負載均衡 (L7)工作層級傳輸層 (TCP/UDP)應用層 (HTTP/HTTPS等)決策依據源/目標IP端口URL路徑、Header、Cookie、內容等轉發方式IP地址/端口替換重建連接并深度解析報文性能更高吞吐量&#xff0c;更低延遲需內容解析&…

StackingClassifier參數詳解與示例

StackingClassifier參數詳解與示例 StackingClassifier是一種集成學習方法&#xff0c;通過組合多個基分類器的預測結果作為元分類器的輸入特征&#xff0c;從而提高整體模型性能。以下是關鍵參數的詳細說明和示例&#xff1a; 1. classifiers&#xff08;基分類器&#xff09;…

嵌入式中間件-uorb解析

uORB系統詳細解析 1. 系統概述 1.1 設計理念 uORB&#xff08;Micro Object Request Broker&#xff09;是一個專為嵌入式實時系統設計的發布-訂閱式進程間通信框架。該系統借鑒了ROS中topic的概念&#xff0c;為無人機飛控系統提供了高效、可靠的數據傳輸機制。 1.2 核心特征 …