demo
This commit is contained in:
parent
a09723fcef
commit
09c866e878
|
@ -0,0 +1,60 @@
|
|||
# ##基于cortex-m3-emulator实现哈希表并测试验证##
|
||||
|
||||
## 1. 简介
|
||||
|
||||
采用除留余数法构造哈希函数,冲突解决采用链地址法。例如如果具体的关键字列表为(19,14,23,01,68,20,84,27,55,11,10,79),则哈希函数为H(key)=key MOD 13。哈希造表完成后,进行查找时,首先是根据哈希函数找到关键字的位置链,然后在该链中进行搜索,如果存在和关键字值相同的值,则查找成功,否则若到链表尾部仍未找到,则该关键字不存在。
|
||||
|
||||

|
||||
|
||||
## 2. 数据结构设计说明
|
||||
|
||||

|
||||
|
||||
采用一维数组存储所有链节点,哈希表每个链节点包含该节点存储的关键字和下一个节点指针。
|
||||
|
||||
## 3. 测试程序说明
|
||||
|
||||
测试函数为TestHash(已经在makefile和kconfig注册),具体使用为TestHash,输入的第一个整数代表关键字个数,之后每输入一个关键字需要回车一次,输入完毕后会打印构建好的哈希链表。
|
||||
|
||||
## 4. 运行结果(##需结合运行测试截图按步骤说明##)
|
||||
|
||||
##### 测试样例一: #####
|
||||
|
||||
输入:(每个数字输入后都需要回车,且由于测试特性,每次测试均需要重启模拟器,否则会在原有的表基础上新增)
|
||||
|
||||
TeshHash
|
||||
|
||||
1 2
|
||||
|
||||
输出:
|
||||
|
||||

|
||||
|
||||
##### 测试样例二: #####
|
||||
|
||||
输入:
|
||||
|
||||
TestHash
|
||||
|
||||
4 1 1 3 5
|
||||
|
||||
输出:
|
||||
|
||||

|
||||
|
||||
##### 测试样例三: #####
|
||||
|
||||
输入:
|
||||
|
||||
TestHash
|
||||
|
||||
12 3 3 23 12 45 3 45 45 23 534 23 8
|
||||
|
||||
输出:
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue