大話資料第一天

2021-09-12 19:38:15 字數 2440 閱讀 1194

按照視點的不同,資料結構分為邏輯結構和物理結構。

資料物件中資料元素之間的相互關係

集合結構

線性結構

樹形結構

圖形結構

資料的邏輯結構在在計算機中的儲存形式

順序儲存結構

鏈式儲存結構

基本資料型別

抽象資料型別(adt abstract data type)

演算法的特性:

輸入輸出

有窮性確定性

可行性演算法效率的度量:

時間複雜度

空間複雜度

定義:零個或多個資料元素的有限序列。線性表中的元素為空時,稱為空表。當存在n個元素時,便有前驅節點和後繼節點的說法。

線性表中通常使用抽象資料型別,便於對資料進行操作。

/**

物件:物件時類的乙個例項,有狀態和行為

類:類是乙個模板,它描述一類物件的行為和狀態

**/

package listtest;

/** * 建立線性表及其相關操作

* 線性表的抽象資料型別定義如下:

* adt

* data

* 線性表的資料物件集合為,每個元素的型別均為datatype.其中,

* 除第乙個元素a1外,每個元素有且只有乙個直接的前驅元素,除了最後乙個元素an外,

* 每個元素有且只有乙個直接後繼元素。資料元素之間的關係時一對一的關係。

* operation

* initlist(*l): 初始化操作,建立乙個空的線性表l

* listempty(l): 若線性表為空,返回true,否則返回false

* clearlist(*l): 將線性表清空

* getelem(l,i,*e): 將線性表l中第i個位置元素返回給e

* 返回該元素在表中序號表示成功;否則,返回0表示失敗

* listdelete(*l,i,*e):刪除線性表l中第i個位置元素,並用e返回其值

* listlength(l): 返回線性表l的元素個數

* endadt

*//**

* 順序儲存鍊錶 以下**來自網上

*/public class sequencelist

/*** 初始化線性表

*/public sequencelist(int initialsize)

else

}/**

* 判斷線性表是否為空

*/public boolean isempty()

system.out.println("表不為空");

return false;

//return this.length==0 也可以直接這樣

}/**

* 清空線性表

*/public void clearlist()

/***獲取第i個位置的元素值

*/public t getelem(int i)

if(i<1||i>this.length)

system.out.println("資料獲取成功!");

return (t) data[i-1];

}/**

* 查詢元素,返回值為該元素位置,0代表查詢失敗

*/public int locateelem(t e)

}system.out.println("查詢失敗!");

return 0;

}/**

* 在第i個位置插入新元素

*/public boolean listinsert(int i,t e)

if(this.length==this.maxsize)

if (i<=this.length)

this.data[i-1]=e;

this.length++; //表長改變勿忘

system.out.println("插入成功!");

return true;

}/**

* 刪除第i個位置的元素,並用e返回其值

*/public t listdelete(int i)

if(i<1||i>this.length)

t e=(t) this.data[i-1];

if(i對於順序儲存結構,刪除除和插入的時間複雜度的考量:

最好情況:插入和刪除最後乙個元素,前面的不動,時間複雜度為o(1)

最壞情況:插入和刪除第乙個元素,那後面的元素就需要向後或向前移動n-1次,時間複雜度為o(n)

平均情況:元素插入到第i個位置或刪除第i個元素,需要移動n-i個元素。最終平均移動次數和最中間的那個元素的移動次數相等,為(n-1)/2

平均時間複雜度還是o(n)

mysql 第一天 MySQL 系列第一天

mysql 系列第一天這篇文章是黑馬程式設計師 mysql 教程的筆記,好好學習哦。和 mysql 資料庫的互動 客戶端單向連線認證 連線伺服器,認證身份。mysql 資料庫屬於 c s 架構,所以開啟伺服器程式後,需要通過客戶端連線它。mysql 會自帶乙個客戶端程式,可以直接輸入賬號和密碼即可連...

上班第一天

上班第一天啊,沒有去上班。早上起的很早,快走的時候突然很不想去。最後決定不去了。早上肯定也沒有什麼事情,無非就是開會,改革之類的話,這種話年年都說,年年都是老樣子。小寶說今天他訂婚,早上還去上班,誰知道是真是假呢。今天是正月初八,30年前我爸和我媽結婚了。現在過年只剩下最重要的一件事情,陪爸媽坐坐,...

開學第一天

今天開學的第一天,心裡些許興奮,畢竟我的第一步還是邁出了。上午大家都進行了簡短的自我介紹,從中了解的其他人的一些故事。每乙個來黑馬的學員背後都有這樣或者那樣的故事。倒是很欽佩其中的一位大姐,她頗具傳奇色彩。而且現在是一位兩歲孩子的母親,她現在所有的壓力或許比我們在座的任何一位學員壓力都要大的多。從她...