一:?jiǎn)栴}描述
針對(duì)某個(gè)集體(比如你所在的班級(jí))中的“人名”設(shè)計(jì)一個(gè)哈希表,使得平均查找長(zhǎng)度不超過R,完成相對(duì)的建表和查表程序。
二:基本要求
假設(shè)人名為中國(guó)人姓名的漢語拼音形式。待填入哈希表的人名共有30個(gè),取平均查找長(zhǎng)度的上限為2。哈希函數(shù)用除留余數(shù)法構(gòu)造,用偽隨機(jī)探測(cè)再散列法處理沖突。
三:實(shí)現(xiàn)提示
如果隨機(jī)函數(shù)自行構(gòu)造,則應(yīng)首先調(diào)整好隨機(jī)函數(shù),使其分布均勻。人名的長(zhǎng)度均不超過19個(gè)字符(最長(zhǎng)的人名如:莊雙雙(ZHAGN SHUANG SHUANG)。字符的取碼方法可直接利用C語言中的tosacii函數(shù),并可對(duì)過長(zhǎng)的人名先作折疊處理。
四:需求分析
本演示程序是對(duì)哈希表的建立和查找進(jìn)行演示,主要數(shù)據(jù)來自自己編寫的人名“A~~Z”等字母組成,拼音由開頭的字母組成的詞組,查找時(shí)用偽隨機(jī)探測(cè)再散列法處理沖突。隨機(jī)產(chǎn)生人名的位置。具體的程序內(nèi)容在源程序里面有比較詳細(xì)的解析。程序的運(yùn)行在下列有詳細(xì)的介紹。
標(biāo)簽:
上傳時(shí)間:
2015-06-22
上傳用戶:wab1981