摘要:
往往不做集合的并、交、差运算,而经常需要判定某个元素是否在给定集合中,并且对集合作插入、删除操作。 把字典定义为名字-属性对的组合,根据问题的不同,可以为名字和属性赋予不同的意义。 典型的字典组织方式有线性表、跳表、散列表 字典的抽象数据类型: 用有序链表表示字典 链表中的每个结点表示字典的一个元素 阅读全文
摘要:
适合需要反复用到查询某个元素归属于哪个集合的运算。 初始化时每个元素自成为单元素集合,parent均为-1。此后parent[x]>0时表示元素x的父在数组中的下标;parent[x]<0时表示以元素x为根的集合的元素个数 Find操作可以查询元素归属哪个集合,搜索并返回包含元素x的根即可,有两种方 阅读全文
摘要:
集合的成员是无序的,没有先后次序关系。 每个元素在集合中只出现一次,但在实际应用中却有元素重复出现的情况。 在某些集合中保存的是实际数据值,在某些集合中保存的是表示元素是否在集合中的指示信息。 集合的抽象数据类型: 1.使用位向量表示集合 用二进位数组(bit vector)来实现集合,数组采用16 阅读全文
摘要:
广义表简称表,是线性表的推广,表中元素可以是数据元素(原子),也可以是子表。 广义表的表头(head)是表中第一个表元素、表尾(tail)是除了表头外其它元素组成的表。 首先要对广义表结点类GenListNode和返还值的结构类Item进行定义。它们都有一个用来标明结点类型的标志域utype、一个信 阅读全文