2 live or die live_or_die 于 2016.02.01 10:59 提问

散列平方探测法的疑惑

求教各位,在问题中给出的是字符串时,我们用散列获得它的内部编号,那拉链法肯定不行了,能用开放定址法。那么问题来了,如果检测的时候输入的字符串是错误的(不是开始给出的之一,这就是在散列中不存在),我选择平方探测法的话如何发现这种错误呢?或者有什么方法可以检测这种错误呢?如果发现不了,那么对错误的输入,这种方法不是毫无办法了吗?

1个回答

devmiao
devmiao   Ds   Rxr 2016.02.02 08:53
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
哈希表 平方探测再散列
1. 头文件   enum KindOfEntry { Deleted, Empty, Legitimate }; struct Node { int key; KindOfEntry info; }; class MyHash { public: MyHash(int tableSize); ~MyHash(); void Insert(int key);
数据结构--解决散列冲突,平方探测法
上代码: package com.itany.quadraticprobing; import java.util.LinkedList; import java.util.List; //使用平方探测的散列表 来解决散列时的冲突问题 public class QuadraticProbingHashTable { private static final int DEFAULT_
详细图解什么叫平方探查法即二次探测再散列和线性探测再散列(数据结构 哈希函数 哈希冲突)
虽然上文有提到怎么解释的开放地址法处理hash冲突,但是当时只是给了个简单的图,没有 详细讲解一下, 我当时有点不明白,回头查查资料,然后亲自动手,整理了一下。 然后我就三幅图详细讲解一下: 什么叫线性探测再散列; 什么叫平方探测再散列(二次探测再散列); 老师的ppt吧。 给个原始数据如上图。 下面详细解析。 上面的是线性探测再散列。这个简单。
线性探测再散列和平方探测再散列(二次探测再散列)算法
用于解决冲突的两种算法 线性探测再散列 平方探测再散列(二次探测再散列)参考这个blog,写的很好。 http://blog.csdn.net/qq_27093465/article/details/52348366
散列表实现(平方探测法)
from 《数据结构与算法分析》 开放地址散列法中,如果有冲突发生,就尝试选择另外单元,直到找出空的单元为止。 更一般的,单元h0(X) ,h1(X),h2(X)等等 hi(X)=(Hash(X)+F(i)) mod TableSize  且 F(0)=0 对开放地址散列表算法来说,装填因子应低于0.5 平方探测法是消除线性探测中的一次聚集问题的冲突解决方法。流行的选择是F(i)=i*i
哈希查找之平方探测
平方探测的原理 平方探测是由根据 哈希函数算出的哈希值 不断向左向右进行探测即: 探测的过程中(即 Hashval  + i * i) Hashval是不变的,直至找到合适位置后,重新给Hashval赋值(见下面代码部分)。 平方探测的整体流程 平方探测的整体流程和线性探测基本相似: ①根据哈希函数算出Hashval,判断HashTable[Hashval]是否被占用,如果没被占用,则H
数据结构学习笔记(六)散列之线性探测法、平方探测法
线性探测法:线性探测法中函数是位置i的函数,这相当于当发生冲突的时候,逐个单元甚至回绕查询到一个空单元,也就是说数据都需要放置在这一个表格中,当发生冲突的时候就出发上面的机制,不过这样做,花费的时间是相当多的,这样单元会形成一些区域块,其结果称作为一次聚焦,也就是是说经过多次的查找才能找到一个空的单元:    Hkey(x) = Hkey(n)+ i;也就是当出现和n重复的hash值的时候,则需要...
平方探测法hash
数据结构实验之查找五:平方之哈希表 Time Limit: 400MS Memory Limit: 65536KB Problem Description 给定的一组无重复数据的正整数,根据给定的哈希函数建立其对应hash表,哈希函数是H(Key)=Key%P,P是哈希表表长,P是素数,处理冲突的方法采用平方探测方法,增量di=±i^2,i=1,2,3,...,m-1 In
hash解决冲突之---平方探测
数据结构实验之查找五:平方之哈希表 Time Limit: 400ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 给定的一组无重复数据的正整数,根据给定的哈希函数建立其对应hash表,哈希函数是H(Key)=Key%P,P是哈希表表长,P是素数,处理冲突的方法采用平方探测方法,增量di=±i^2,i=1,2,3,...,m-1 输入 输入一组测试数据,
散列表(平方探测法解决冲突)
用平方探测法来解决冲突的实现头文件:#ifndef HASHQUAD_H_INCLUDED #define HASHQUAD_H_INCLUDEDtypedef unsigned int Index; typedef Index Position;typedef int ElementType;struct HashTbl; typedef struct HashTbl *HashTable;Has