關於資料結構的一些預備知識

2021-10-02 05:44:45 字數 957 閱讀 2625

在這裡 應該是用c語言來進行編寫

關於指標的知識:

int

*p;//p 指的是 乙個指標變數 是乙個變數名字 int * 表示該p變數只能儲存int型別變數的位址)

int

*pint i =10;

int j;

p =&i // 這個含義就是將i的位址傳送給p 則意味著p指向i *p 則就是i變數 修改p或是i的值 並不會對雙方產生任何影響 i的值若是改了 不會影響p 而是會改變*p的值 因為*p就是i

j =*p // 等價於j = i

int a[5] = ;

// 一維陣列名是乙個指標常量,存放的是一維陣列第乙個元素的位址,它的值不可以被改變,也就是一維陣列名指向一維陣列的第乙個元素

a[3] == *(a+3);

double *p;

double x = 22.2;

p = &x; // x佔8個位元組 1個位元組是8位 乙個位元組乙個位址 p儲存的是x的首位址 而不是儲存p的所有位址

資料結構: 狹義的講:是專門去研究資料儲存的問題

資料的儲存包含兩個方面: 個體的儲存 + 個體關係的儲存

演算法是對儲存資料的操作

廣義的講:資料結構既是包含資料的儲存 也包含資料的操作問題 演算法是對資料儲存的操作

演算法:狹義來說: 演算法是和資料的儲存方式密切相關

廣義來說: 演算法和資料的儲存方式無關 這就是泛型思想

資料的儲存結構有幾種:

線性:連續儲存 如陣列 優點:訪問速度快 缺點:事先必須知道陣列的長度 需要大塊的連續記憶體 對陣列中的元素進行插入和刪除速度比較慢 空間通常有限制

離散儲存 如鍊表 優點:空間沒有限制 插入刪除元素的速度很快 缺點:訪問的速度很慢

應用: 棧 佇列

非線性 :樹 圖

學習c語言資料結構的一些預備知識

資料結構 筆記 預備知識 一.指標 我們將記憶體中位元組的編號稱為位址 address 或指標 pointer 位址從 0 開始依次增加,對於 32 位環境,程式能夠使用的記憶體為 4gb,最小的位址為 0,最大的位址為 0xffffffff。c語言用變數來儲存資料,用函式來定義一段可以重複使用的 ...

一些C 資料結構知識

陣列 1.大小固定 2.記憶體連續 3.方便訪問 4.不方便新增刪除 5.儲存單一型別元素 arraylist 陣列列表 1.記憶體連續,可以通過下標訪問,大小不固定 2.方便訪問,不方便新增刪除.3.儲存不同型別的資料.訪問的是object型別,裝拆箱印象效能 list是乙個介面,arraylis...

資料結構之預備知識

指標是c語言的靈魂 位址 記憶體單元的編號 從零開始的非負整數 範圍 0 ffffffff 0 4g 1 指標 指標就是位址,位址就是指標 指標變數是存放記憶體單元位址的變數 指標的本質是乙個操作受限的非負整數 分類 1.基本型別指標 基本概念 int i 10 int p i 等價於 int p ...