集合等離散數據結構

集合

簡單說一下集合的概念,集合包含一組可區分的對象,稱爲成員或元素。如果一個對象x是對象S的一個成員,記爲xSx\in{S}。如果x不是S的成員,則記爲xSx\notin{S}。通過在一對大括號中顯式列出集合的所有成員的方式描述一個集合,例如通過S={1,2,3}S = \{1,2,3\}定義一個包含成員1,2,3的集合。如果兩個集合A和B包含相同的成員,則稱A,B相等(忽略順序和重複元素)。
常用集合有幾種

  • \empty表示空集
  • Z\Z表示整數集
  • R\R表示實數集
  • N\N表示自然數集

如果集合A的所有元素都在集合B中,即如果xAx\in{A}就有xBx\in{B},則可以記爲ABA\subseteq{B},集合A是集合B的一個子集。當且僅當ABA\subseteq{B}BAB\subseteq{A}時,有A=B。對於任意三個集合A,B,C,如果ABA\subseteq{B}BCB\subseteq{C},則ACA\subseteq{C}。對於任意集合A,有A\empty\subseteq{A}

集合操作服從下列定律:
空集律
A=A=A A\bigcap{\empty} = \empty \\ A\bigcup{\empty} = A
冪等律
AA=AAA=A A\bigcap{A} = A \\ A\bigcup{A} = A
交換律
AB=BAAB=BA A\bigcap{B} = B\bigcap{A} \\ A\bigcup{B} = B\bigcup{A}
結合律
A(BC)=(AB)CA(BC)=(AB)C A\bigcap({B}\bigcap{C}) = (A\bigcap{B})\bigcap{C} \\ A\bigcup({B}\bigcup{C}) = (A\bigcup{B})\bigcup{C}
分配律
A(BC)=(AB)(AC)A(BC)=(AB)(AC) A\bigcap({B}\bigcup{C}) = (A\bigcap{B})\bigcup(A\bigcap{C}) \\ A\bigcup({B}\bigcap{C}) = (A\bigcup{B})\bigcap(A\bigcup{C})
吸收律
A(AB)=AA(AB)=A A\bigcap({A}\bigcup{B}) = A \\ A\bigcup({A}\bigcap{B}) = A
德·摩根律
A(BC)=(AB)(AC)A(BC)=(AB)(AC) A-({B}\bigcap{C}) = (A-B)\bigcup(A-C) \\ A-({B}\bigcup{C}) = (A-B)\bigcap(A-C)

通常,所有被考慮的集合都是一個全域U的子集,例如,當考慮各種僅有整數組成的集合時,集合Z就是個合適的全域。給定一個全集U,可以定義A的補集爲Aˉ=UA\bar{A} = U - A,對於任何集合AUA\subseteq{U},有以下定律:
Aˉˉ=AAAˉ=AAˉ=U \bar{\bar{A}} = A \\ A\bigcap{\bar{A}} = \empty \\ A\bigcup{\bar{A}} = U
德·摩根律可以補集形式表示。對任意兩個集合B,CUB,C\subseteq{U},有
BC=BˉCˉBC=BˉCˉ \overline{B\bigcap{C}} = \bar{B}\bigcup{\bar{C}} \\ \overline{B\bigcup{C}} = \bar{B}\bigcap{\bar{C}}
如果集合A和B沒有公共的元素,即AB=A\bigcap{B} = \empty,則稱兩者不相交。如果一個非空集合δ={Si}\delta = \{S_i\}滿足條件

  • 集合兩兩不相交,即對SiSjδS_i,S_j\in{\delta},如果iji \neq{j},則SiSj=S_i\bigcap{S_j} = \empty
  • 他們的並集是S,即
    S=SiδSi S = \bigcup\limits_{S_i\in\delta}S_i
    則稱集合δ\delta是集合S的一個劃分。換句話說,如果S中的每個元素僅出現在一個SiδS_i\in{\delta},則稱δ\delta爲集合S的一個劃分。
           集合中元素的個數稱爲j集合的勢,記爲S\left|S\right|。如果兩個集合的元素可以形成一一對應,則稱兩個集合有相同的勢。空集的勢爲0。如果一個集合的勢是自然數,則稱集合是有限的,反之,他是無限的。如果一個無限集合可以跟自然數集合N形成一一對應,則稱其爲可數無限;反之,則稱其爲不可數。整數集Z是可數的,而實數集R是不可數的。
    一個具有n個元素的有限集合常被稱爲n維集。一個一維集也成爲單元集。一個集合的k個元素的子集稱爲k子集。
    集合S的所有子集的集合,包括空集和S本身表示爲2S2^S,稱爲S的冪集。例如2{a,b}={,{a},{b},{a,b}}2^{\{a,b\}} = \{\empty,\{a\},\{b\},\{a,b\} \}。有限集S的冪集的勢是2S2^{\left|S\right|}
    可以使用組合證明,先找有0個元素的子集,再找有1個元素的子集……最後找有n個元素的子集,他們的個數分別是k=0n(nk)\sum\limits_{k=0}^{n}{ n \choose k},恰好是2n2^n
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章