集合Set類的功能 2

2021-10-06 17:28:39 字數 2228 閱讀 1968

基於鍊錶的方式來組織集合元素,集合類的操作與上一次作業一樣,但把通過函式呼叫方式實現的集合交、並、差運算通過第四章的*、+、-運算子過載實現,以統一程式設計風格。

#include

using

namespace std;

struct node

;class

set//從頭結點開始遍歷輸出

out<<

"}"

//返回第乙個引數(連續輸出) }}

;set::

set(

)//無參建構函式

set::

set(set & x)

//複製建構函式

}set::

~set()

//析構函式

head=

null;}

int set::

find

(int x)

return-1

;}void set::

insert

(int x)

else

if(tmp2==

null

) head=tmp;

else

tmp2-

>next=tmp;}}

void set::

del(

int x)

else

else}}

}void set::

clear()

head=

null;}

set &set::

operator=(

const set & x)

return

*this;}

set set::

operator

*(set & x)

return tmp;

}set set::

operator

+(set & x)

return tmp;

}set set::

operator

-(set & x)

return tmp;

}int

main()

基於類模板實現通用型別的集合操作

#include

#include

using

namespace std;

template

<

typename t1=

int>

struct node

;template

<

typename t=

int>

class

setset

(set & x)}~

set(

) head=

null;}

intfind

(t x)

return-1

;}void

insert

(t x)

else

if(tmp2==

null

) head=tmp;

else

tmp2-

>next=tmp;}}

void

del(t x)

else

else}}

}void

clear()

head=

null;}

set&operator=(

const set & x)

return

*this;}

setoperator

*(set & x)

return tmp;

}set

operator

+(set & x)

return tmp;

}set

operator

-(set & x)

return tmp;

}friend ostream &

operator

<<

(ostream & out,

const set & x)

//從頭結點開始遍歷輸出

out<<

"}"

//返回第乙個引數(連續輸出) }}

;int

main()

Set集合類 注意

customer類的equals 方法 public boolean equals object o 向hashset中加入兩個customer物件 set set new hashset customer customer1 new customer jim 18 customer custome...

集合,Set實現類筆記

回顧 list體系 棧 佇列 陣列 鍊錶 list體系的三個子類 arraylist 資料結構 陣列 vector 資料結構 陣列 特有功能 linkedlist 資料結構 鍊錶 特有功能 first last 面試題 模擬棧結構 泛型 明確資料型別的工作放在建立物件 或者 呼叫方法的時候 型別轉換...

Collection集合類(Set介面)

set介面 extend collection介面 特點 1 不允許重複的元素 2 設有索引,沒有帶索引的方法,也不能進行普通for 3 是乙個元素的集合,訪問可能不一致 4 底層是雜湊表 查詢快 方法上和collection一致 實現類 hashset 由雜湊表構成 例 setset new ha...