數(shù)據(jù)結(jié)構(gòu)與算法(八),查找
前面介紹了基本的排序算法,排序通常是查找的前奏操作。這篇介紹基本的查找算法。
1、符號(hào)表
符號(hào)表(Symbol Table)是一種存儲(chǔ)鍵值對(duì)的數(shù)據(jù)結(jié)構(gòu),它可以將鍵和值關(guān)聯(lián)起來。支持兩種操作:插入,將一組新的鍵值對(duì)插入到表中;查找,根據(jù)給定的鍵得到響應(yīng)的值。
符號(hào)表,有時(shí)又稱索引,是為了加快查找速度而設(shè)計(jì)。它將關(guān)鍵字Key和記錄Value相關(guān)聯(lián),通過關(guān)鍵字Key來查找記錄Value。在現(xiàn)實(shí)生活中,我們經(jīng)常會(huì)遇到各種需要根據(jù)key來查找value的情況,比如DNS根據(jù)域名查找IP地址,圖書館根據(jù)索引號(hào)查找圖書等等:
符號(hào)表的特征:
- 表中不能有重復(fù)的鍵
- 鍵和值不能為空
符號(hào)表的抽象數(shù)據(jù)類型:
網(wǎng)友評(píng)論