演算法與資料結構學習 04 記憶體

2021-07-02 18:31:31 字數 527 閱讀 6051

記憶體中存在三種資料

全域性中的資料、堆中的資料

、臨時堆疊中的數

據1.全域性資料

static int value = 100;

void process()

value和number的資料其實都屬於全域性資料,這裡的變數是不隨著函式的呼叫發生變化的。

2.堆中的資料

void process()

分配的資料就是堆資料,如果沒有free操作,那麼它的存在也是全域性的。只要記憶體不主動釋放,那麼這個記憶體就會以一直存在。

3.臨時資料

void process()

; return;

}

這裡的資料都是堆疊內部的資料,一旦process呼叫結束返回之前,那麼name位址指向的記憶體空間已經被其他函式使用。

關於記憶體還有很多值得學習的地方,包括之前文章講到的,函式呼叫,在堆疊中是怎麼樣實現的。

資料結構學習筆記 2 資料結構與演算法

四.演算法設計的要求 五.演算法效率的度量方法 六.函式的漸近增長 七.演算法時間複雜度 八.常見的時間複雜度 九.最壞情況與平均情況 十.演算法空間複雜度 資料結構是底層,演算法高層。資料結構為演算法提供服務。演算法圍繞資料結構操作。演算法是解決特定問題求解步驟的描述,在計算機中表現為指令的有限序...

資料結構與演算法(04)

josephu問題為 設編號為1 2,n的n個人圍坐一圈,約定編號為k 1 k n 的人從1開始報數,數到m的那個人出列,它的下一位又從1開始報數,數到m的那個人又出列,依次類推,直到所有人出列為止,由此產生乙個出隊編號的序列。1.約瑟夫問題 建立環形鍊錶的思路 a.先建立第乙個結點,讓first指...

資料結構學習

什麼是資料結構 對計算機記憶體中的資料的一種安排。資料結構有那些?優缺點?1.陣列 插入快 知道下標 查詢慢,刪除慢,大小固定 2.有序陣列 比無序的查詢塊,刪除和插入慢,大小固定 3.棧 吃多了吐 個人理解 4.佇列 吃多了拉 個人理解 5.鍊錶 插入快,刪除快,查詢慢 6.二叉樹 查詢 插入 刪...