資料結構與演算法心得筆記 零起點學習(一)

2021-10-06 12:40:31 字數 2068 閱讀 5072

1.2 資料結構的定義

1.3 邏輯結構與物理結構

資料:是描述一種事物的符號,是計算機中可以操作的物件,是能被計算機識別,並輸入給計算機處理的符號集合。資料元素:是組成資料的、有一定意義的基本單位,在計算機中通常作為整體處理,也被稱為記錄。

我們可以將其理解為一類事物的基本單位,比如:animals類中有貓、狗、老虎、獅子、大象等等,他們都是animals類中的資料元素。

資料項:乙個資料元素可以由若干個資料項組成。

我們還拿剛才的例子打比方,狗是animal類的乙個資料元素,而對狗來說,它有年齡、毛色、性別等等資料項,也可以有耳朵、嘴巴、眼睛等資料項,具體有哪些資料項應該視情況而定。

資料物件:是性質相同的資料元素的集合,是資料的子集。

換句話說,資料物件具有相同數量和型別的資料項,比如,所有的狗都有年齡、毛色、性別等資料項。

在實際應用中,處理的資料元素通常具有相同性質,在不產生混淆的情況下,我們都將資料物件簡稱為資料。

下面我們可以用一張圖來看一下它們之間的關係,如圖1-1所示

資料結構:是相互之間存在一種或多種特定關係的資料元素的集合。

我們可以將資料結構分為資料和結構兩部分,所謂資料,就是我們理解的字面意義上的不同的資料元素,而結構,就是這些資料元素之間的某種特定關係。

我們從不同的角度理解資料結構,它可以分為邏輯結構和物理結構。

邏輯結構:是指資料物件中資料元素之間的相互關係。

它分為以下四種:

1. 集合結構:

集合結構:集合結構中的資料元素同屬於乙個集合,而它們之間沒有其他任何關係。

其關係如圖1-2所示:

2. 線性結構

線性結構:線性結構中的資料元素之間是一對一的關係。

其關係如圖1-3所示:

3. 樹形結構

樹形結構:樹形結構中的資料元素之間存在一種一對多的層次關係。

其關係如圖1-4所示:

4. 圖形結構

圖形結構:圖形結構的資料元素是多對多的關係。

其關係如圖1-5所示:

物理結構:是指資料的邏輯結構在計算機中的儲存形式。

在這裡我們打個比方,比如說季節交替,我們要把過季的衣服裝到整理箱裡,那麼在這裡,過季的衣服就相當於資料的邏輯結構,箱子相當於計算機,我們要把衣服疊起來才能放到箱子裡,那麼疊好後的衣服就相當於資料的物理結構。

1. 順序儲存結構

其關係如下圖1-6所示:

2. 鏈式儲存結構

鏈式儲存結構:是把資料元素存放在任意的儲存單元裡,這組儲存單元可以是連續的,也可以是不連續的。

其關係如下圖1-7所示:

零起點學演算法68 刪除字元

include include include int main printf n memset str,0,sizeof str getchar 不寫會出錯 return 0 這是乙個非常水的題,主要想講一下gets 讀取的換行符會被轉化成 0 來結束字串的讀入。但是gets之後,再次讀取乙個字元...

零起點學演算法104 第幾天?

time limit 1 sec memory limit 128 mb 64bit io format lld 給定乙個日期,輸出這個日期是該年的第幾天。輸入資料有多組,每組佔一行,資料格式為yyyy mm dd組成,具體參見sample input 另外,可以向你確保所有的輸入資料是合法的。對於...

1171 零起點學演算法78 牛牛

牛牛是一種紙牌遊戲,總共5張牌,規則如下 如果找不到3張牌的點數之和是10的倍數,則為沒牛 如果其中3張牌的點數之和是10的倍數,則為有牛,剩下兩張牌的點數和對10取餘數,餘數是幾,就是牛幾,特別的當餘數是0的時候是牛牛 例如 1 2 3 4 5,1 4 5 0 mod 10 2 3 5 mod 1...