資料結構與演算法實驗1 抽象資料型別的表示與實現

2021-09-14 04:17:00 字數 1894 閱讀 3835

今天對資料結構與演算法實驗進行實踐,這是乙個先明白實驗目的是什麼,然後通過抽象資料型別的定義、表示與實現的過程,清楚設計每乙個函式的目的,然後再寫程式,這樣效率會變得更高!

基本要求:

設計實現抽象資料型別「三元組」。每個三元組由任意三個實數的序列構成,基本操作包括:建立乙個三元組取三元組的任意乙個分量置三元組的任意乙個分量求三元組的最大分量求三元組的最小分量顯示三元組銷毀三元組

選作內容:

實現兩個三元組的對應分量相加或相減給三元組的各分量同乘乙個比例因子操作

#include #include #define ok 1

#define error 0

typedef int status;

typedef float elemtype;

typedef structtriplet;

/*初始化三元組t且初始化賦值*/

status inittriplet(triplet &t,elemtype v1,elemtype v2,elemtype v3)

/*初始化三元組t1且初始化賦值*/

status inittriplet1(triplet &t1,elemtype v1,elemtype v2,elemtype v3)

/*取三元組t中第i個元素賦值給e*/

status getelem(triplet t,status i,elemtype &e)

/*將三元組t中第i個元素置換成所輸入的e的值*/

status put(triplet &t,status i,elemtype e)

/*找出三元組t中最大值並將其賦值給e*/

elemtype getmax(triplet &t,elemtype &e)

/*找出三元組t中最小值並將其賦值給e*/

elemtype getmin(triplet &t,elemtype &e)

/*輸出三元組t1的三個元素值*/

status showtriplet1(triplet &t1)

/*判斷三元組t是否是遞增排序*/

status isascending(triplet &t)

/*判斷三元組t是否是遞減排序*/

status isdescending(triplet &t)

/*銷毀三元組t*/

status destroytriplet(triplet *t)

/*兩個三元組對應元素相加,並將其依次放入陣列x中*/

status addtriplet(triplet &t,triplet &t1,elemtype x)

return ok;

}/*兩個三元組對應元素相減,並將其依次放入陣列x1中*/

status subtracttriplet(triplet &t,triplet &t1,elemtype x1)

return ok;

}/*輸出陣列x或x1的各元素值*/

status showresult(elemtype x)

/*三元組t的各元素同乘乙個比例因子k*/

status multiplynumbert(triplet &t,elemtype k)

/*三元組t1的各元素同乘乙個比例因子k*/

status multiplynumbert1(triplet &t1,elemtype k)

int main()

資料結構與演算法實驗 1

7 1 陣列元素迴圈右移問題 同上 7 2 有序鍊錶的插入 20 分 已知乙個遞增有序鍊錶l 帶頭結點,元素為整數 編寫程式將乙個新整數插入到l中,並保持l的有序性。其中單鏈表的型別定義參考如下 typedef int elementtype typedef struct lnode lnode,l...

資料結構與演算法實驗祝恩 《資料結構與演算法》實驗報告

保持青春的秘訣,是有一顆不安分的心。資料結構與演算法 實驗報告 模板 實驗題目 線性表綜合實驗 班級 姓名 學號 完成日期 一 實驗目的 熟悉線性表的基本操作在兩種儲存結構上的實現,其中以熟悉各種鍊錶的操作為重點。通過具體應用例項在複習高階程式語言使用方法的基礎上初步了解資料結構的應用。二 實驗內容...

資料結構與演算法實驗祝恩 資料結構與演算法

版 次 1 頁 數 256 字 數 100 開 本 16開 紙 張 膠版紙 印 次 1 包 裝 平裝 膠訂 商品詳情 購書須知 快遞不是小店經營,有問題我們盡量給您解決,請不要因為快遞問題遷怒小店,非常感謝 基本資訊 書名 計算機 資料結構與演算法 定價 29.00元 出版社 清華大學出版社 出版日...