妙趣橫生的演算法學習2

2021-07-03 01:04:46 字數 1250 閱讀 8757

第一章 基礎資料結構

1.1順序表

定義與特性:

1.順序表的記憶體空間是一連串連續的位址空間

2.需要乙個唯一的表名來表示

3.資料在順序表中按先後順序排列

順序表的宣告:

const int defaultsize=10;

template class seqlist;

}//建構函式

~seqlist()

private:

datatype *elements;

int maxsize;

};

順序表的基本操作:

插入操作

刪除操作

查詢操作

獲取操作

修改操作

將原定義改為:

const int defaultsize=10;

template class seqlist;

}//建構函式

~seqlist()

bool insertelement(datatype data);

bool deleteelement(int location);

datatype getelement(int location);

bool changeelement(int location,datatype newdata);

private:

datatype *elements;

int maxsize;

int length;

};

插入操作 insertelement

templatebool seqlist::insertelement(datatype data)

else

}

**思路如下:1.檢查順序表是否已滿,若滿拒絕插入操作

2.如果未滿,將新元素插入表尾空間中

刪除操作 deleteelement

刪除指定位置的元素

template bool seqlist::deleteelement(int location)

else

else

}

例項運用與分析

1.1用c++實現乙個順序表,使其可以儲存10個整形資料,並可以實現插入刪除和輸出整個順序表的功能

妙趣橫生的演算法 棧和佇列

棧 棧的特點是先進後出,一張圖簡單介紹一下。include stdio.h include math.h include stdlib.h define stack init size 20 define stackincrement 10typedef char elemtype typedef ...

妙趣橫生的演算法(1)之順序表操作

建立乙個靜態的順序表存放整數,大小為10,完成以下操作。1 輸入6個整數,列印出順序表中的內容,並顯示表中剩餘的空間個數 2 在順序表中的第3個位置插入元素0,列印出順序表中的內容,並顯示表中剩餘的 空間個數。3 再試圖插入表中第11個位置整數0,程式提示超出範圍。4 刪除表中第6個元素,列印出順序...

多執行緒有什麼用 妙趣橫生的比喻

這麼解釋問題吧 1。單程序單執行緒 乙個人在乙個桌子上吃菜。2。單程序多執行緒 多個人在同乙個桌子上一起吃菜。3。多程序單執行緒 多個人每個人在自己的桌子上吃菜。多執行緒的問題是多個人同時吃一道菜的時候容易發生爭搶,例如兩個人同時夾乙個菜,乙個人剛伸出筷子,結果伸到的時候已經被夾走菜了。此時就必須等...