理解Skiena对“Hashing and Strings”的描述

时间:2015-03-17 08:15:04

标签: algorithm hashmap hashtable string-hashing

在Skiena的“算法设计手册”一书中,以下段落出现在第80页标题 3.7 Hashing and Strings

  

设α是给定字符串S所在的字母的大小   书面。设char(c)是映射每个符号的函数   字母表到0到α - 1的唯一整数。

上段中的“字母大小”是什么意思?不是所有的字母(a-z)都有相同的大小吗?如何在字母表α上写字符串S是可能的。是不是将字母组合在一起形成一个字符串?

2 个答案:

答案 0 :(得分:4)

字母表的大小α是指可用于字符串S的符号总数。根据具体情况,字母可能会有所不同。例如,二进制数可以使用字母{0,1}(α= 2)表示,可以使用拉丁语低位字母{a,...,z}(α= 26)或符号来表示十六进制数字{{1 (α= 16)。

答案 1 :(得分:1)

我想你可能会对什么"字母表"手段。字母表不是单个符号,而是可能出现在字符串中的所有可能符号的集合。英文字母有26个符号。希伯来字母表有22个符号(它们的符号与英文字母不同)。