template
struct pair
;template
struct pairnode
; pairnode(pairthepair,pair* p)
};template
class dictionary
virtual
bool empty() const=0;
virtual
int size() const=0;
virtual pair* find(const k&) const=0;
virtual
void erase(const k&)=0;
virtual
void insert(const pair&)=0;
};template
class sortedchain public:dictionary
; bool empty() const;
int size() const;
pair* find(const k&) const;
void erase(const k&)=0;
void insert(const pair&);
private:
pair* firstnode;
int dsize;
};template
pair* sortedchain::find(const k& thekey) const
template
void sortedchain::insert(const pair& thepair)
if(p!=null&&p->element.first==thepair.first)
//無匹配的數對,為pair建立新節點
pairnode*newnode=new pairnode(thepair,p)
//在tp之後插入新節點
if(tp==null) firstnode=newnode;
else
tp->next=newnode;
dsize++;
return;
}template
void sortedchain::erase(const k& thekey)
if(p!=null&& p->element.first==thekey)
}
其實和之前的鍊錶線性描述是一樣的,只是這裡面的基本結構為pairnode,pair. pair裡面提供了兩個元素,乙個為鍵,乙個為鍵值。 線性表 陣列描述
ifndef arraylist h define arraylist h include includetemplateclass arraylist templatearraylist arraylist int initcapacity arraylength initcapacity ele...
線性表的鏈式描述
1.概述 鏈式描述中,線性表的元素存在記憶體中的位置是隨機的。基於陣列的描述中,元素的位址是由數學公式決定的,而在鏈式描述中,元素的位址是隨機分布的.2.單向鍊錶 2.1 描述 資料物件的例項的每個元素都用乙個單元或節點來描述。每個節點都明確包含另乙個相關節點的位置資訊,稱為鏈或指標。一般來說,為找...
C 實現線性表(鍊錶描述)
本文使用c 實現了乙個線性表 陣列描述 該程式由三個檔案構成,第一部分是標頭檔案,標頭檔案定義了乙個鍊錶的節點的結構體,同時在該結構體的基礎上定義了乙個線性表類,該抽象類中定義了絕大部分線性表的成員函式,其中包括 確定線性表是否為空 確定線性表中資料的數目 新增乙個資料 按乙個給定索引查詢其對應的元...