資料結構複試問題整合 資料結構面試 問題記錄

2021-10-05 23:56:41 字數 710 閱讀 3594

回答:有向圖,並且是沒有迴路的

回答:不是,只有有向圖,並且是沒有迴路。

回答:棧和佇列都是操作受限的線性表

棧的特點是只能在棧尾入棧、出棧,是先進後出

佇列的特點是隊尾進,隊首出,是先進先出。

回答:關於棧的應用,遞迴,函式呼叫,迷宮求解;

關於佇列的應用,二叉樹的層次遍歷,圖的廣度遍歷

回答:度為2 的樹是指樹中結點的度最大為2;

而二叉樹的形式可以分為5種,可以是空樹,只有根結點,只有左子樹,只有右子樹,左右子樹都有。所以二叉樹的度可以為0,1,2。並且二叉樹的左右子樹是有次序的。

回答:深度優先遍歷,時間複雜度是o(n²),使用遞迴

廣度優先遍歷,時間複雜度是o(n+e),其中e為圖中邊的個數,使用佇列。

回答:1.普利姆演算法

思想:每次選取當前生成樹相接邊中的最短邊,將頂點併入當前生成樹,直到所有的頂點都併入。

時間複雜度:o(n^2),

適合稠密圖

2.克魯斯卡爾演算法

思想:將圖中邊權值按照從小到大排序,然後從最小邊開始掃瞄,並檢測當前邊是否為候選邊(是否形成迴路)。主要針對邊展開

時間複雜度:o(e*loge),e為邊數

適合稀疏圖

1.索引——查詢好友

2.有向圖——使用者是頂點,是否加好友是邊

希爾排序

選擇排序

堆排序歸併排序

基數排序

複試 資料結構

1 陣列和鍊錶的區別?從邏輯結構來看 陣列的儲存長度是固定的,它不能適應資料動態增減的情況。鍊錶與陣列相反,它能夠動態分配儲存空間以適應資料動態增減的情況,並且易於進行插入和刪除操作。從訪問方式來看 陣列在記憶體中是一片連續的儲存空間,可以通過陣列下標對陣列進行隨機訪問,訪問效率較高。鍊錶是連式儲存...

資料結構與演算法 常見的資料結構整合

資料結構是指互相之間存在一種或多種特定短息的資料與元素的集合。陣列是由型別相同的元素構成的有序集合。陣列分類 一維陣列 二維陣列 多維陣列 二維陣列和稀疏陣列互相轉化 陣列中的重複數字 二維陣列中的查詢 最小的k個數 棧是限定僅在表尾部進行插入和刪除操作的線性表。相關問題集錦 棧實現綜合計算器 中綴...

資料結構 資料結構緒論

資料結構是相互間存在一種或多種特定關係的資料元素的集合。程式設計 資料結構 演算法 資料結構是一門研究非數值計算的程式設計問題中的操作物件,以及他們之間的關係和操作等相關問題的學科。資料元素是組成資料的 有一定意義的基本單位,是計算機中通常作為整體處理,也被稱為記錄。乙個資料元素可以由若干個資料項組...