记录下来方便看
1.
哈希表(HashTable)又叫做散列表,根据关键码值(即键值对)而直接访问的数据结构。
- Add 方法
为了给集合添加成员,Add 方法需要首先检查来确保成员不在集合内。如果成员在集合内,那么什么操作也不
做。如果成员不在集合内,则把它添加到散列表中。
代码如下:
public void Add(Object item)
{
if (!data.ContainsValue(item))
data.Add(Hash(item), item);
}
既然数据项必须作为键值对添加到散列表中,所以通过添加要加入到集合内的数据项字符的 ASCII 码值的方法
就可以计算散列值。下面是 Hash 方法:
代码如下:
private string Hash(Object item)
{
char[] chars;
string s = item.ToString();
int hashValue = 0;
chars = s.ToCharArray();
for (int i = 0; i <= chars.GetUpperBound(0); i++)
hashValue += (int)chars[i];
return hashValue.ToString();
}
- Remove 方法和 Size 方法
当然,这里需要能把成员从集合内移除掉的方法,还需要确定集合内成员数量(多少)的方法。下面就是简单
明了的方法:
代码如下:
//这是移除的方法
public void Remove(Object item)
{
data.Remove(Hash(item));
}
//确定数量多少的方法
public int Size()
{
return data.Count;
}