私が理解している以上の答えを試してみます。
- 抽象データ型とは何ですか? 常に私の最初のショット: http://en.wikipedia.org/wiki/Abstract_data_typeを見てください。
これについての私の「実際的な」理解は次のとおりです。オブジェクト、その変数 (またはデータ)、およびこのオブジェクトで定義された操作によって定義されるオブジェクトのいくつかのアイデアがあります。あなたの場合、オブジェクトは整数のリストです。操作はinsert a new integer
、remove an integer
、get the number of integers stored in the list
などです。このデータ型を実装する場合、この操作を関数として記述する必要があります。この機能を提供するには、操作するデータを保存するための構造を作成する必要があります。
- 実装例を提供します。
宿題はしないので、疑似コードをいくつか実行します。
struct ListElement {
int value;
type NextElement; //i leave the type to you
};
void insertBehind(ListElement &element, int newValue)//this is one way to do this
{
ListElement newElement(newValue); //create the new element (use new instead, don't want to "spoiler" the type to you)
newElement.nextElement = element.nextElement; //set the next element of this new one
element.NextElement = newElement; //set the new element
}
...