與資料結構成為好朋友的七個要點

2022-06-22 19:30:11 字數 424 閱讀 6338

問題:

程式中的變數是指什麼?

變數是資料的容器,變數中所儲存的資料是可以改變的。變數的實質是按照變數所儲存資料的大小被分配到的一塊記憶體空間。

把若干個資料沿直線排列起來的資料結構叫作什麼?

陣列,陣列的實質是連續分配的一塊特定大小的記憶體空間。

棧和佇列的區別是什麼?

棧中資料的訪問形式是lifo(last in first out,後進先出);

佇列中資料的訪問形式是fifo(first in first out, 先進先出);

要點:了解記憶體和變數的關係

了解作為資料結構基礎的陣列

了解陣列的應用——作為典型演算法的資料結構

了解並掌握典型資料結構的型別和概念

了解棧和佇列的實現方法

了解結構體的組成

了解鍊錶和二叉樹的實現方法

資料結構與演算法(七) 希爾排序的python實現

希爾排序是改進的一種插入排序。和插入排序有些不同的是,加入了乙個gap,這個gap有規律地變化,使得原list分成不同的子串行,分別對子序列進行插入排序。具體實現如下 def shell sort alist 希爾排序 公升序 n len alist gap n 2 python3取整 while ...

資料結構與演算法之並查集的精簡要點總結

並查集主要用於解決連線問題,其基本思想是為每乙個資料都打上標籤,當標籤一致時則為乙個集合。但是考慮到求並集的時候的效率問題,這裡採用樹形結構解決該問題,簡單來說就是利用兩個節點的根節點是否一致作為是否為乙個集合的標誌。查詢 為防止該資料結構退化為鍊錶,在每次查詢過程中,選擇進行路徑壓縮,使該節點指向...

演算法與資料結構第七次作業 路飛的難題

這次的作業是關於雜湊表的,老實說hash的思想是懂了,不過不太會用。作業我是用之前陣列的方式做的。看了一下優秀 也是看懂了,不過讓我自己實現還是不行。照著優秀 敲了一下。由於選取的hash值比較奇怪,所以也沒考慮到衝突的問題,總之算是水過吧。先把 貼上來。今天要多敲幾題hash。感覺考試還是很有可能...