Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
zhhf96
C-Plus-Plus-TheAlgorithms
提交
842c5fb2
C
C-Plus-Plus-TheAlgorithms
项目概览
zhhf96
/
C-Plus-Plus-TheAlgorithms
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
C-Plus-Plus-TheAlgorithms
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
842c5fb2
编写于
7月 29, 2020
作者:
K
Krishna Vedala
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix forward declarations
上级
7d3adb00
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
17 addition
and
16 deletion
+17
-16
hashing/double_hash_hash_table.cpp
hashing/double_hash_hash_table.cpp
+4
-4
hashing/linear_probing_hash_table.cpp
hashing/linear_probing_hash_table.cpp
+9
-8
hashing/quadratic_probing_hash_table.cpp
hashing/quadratic_probing_hash_table.cpp
+4
-4
未找到文件。
hashing/double_hash_hash_table.cpp
浏览文件 @
842c5fb2
...
...
@@ -15,8 +15,8 @@ namespace { // keep the code local to this file by assigning them to an unnamed
// fwd declarations
using
Entry
=
struct
Entry
;
bool
putProber
(
Entry
entry
,
int
key
);
bool
searchingProber
(
Entry
entry
,
int
key
);
bool
putProber
(
const
Entry
&
entry
,
int
key
);
bool
searchingProber
(
const
Entry
&
entry
,
int
key
);
void
add
(
int
key
);
// Undocumented globals
...
...
@@ -112,7 +112,7 @@ int doubleHash(int key, bool searching) {
* @returns `true` if key is not present or is a `toumb`
* @returns `false` is already occupied
*/
bool
putProber
(
Entry
entry
,
int
key
)
{
bool
putProber
(
const
Entry
&
entry
,
int
key
)
{
if
(
entry
.
key
==
notPresent
||
entry
.
key
==
tomb
)
{
return
true
;
}
...
...
@@ -125,7 +125,7 @@ bool putProber(Entry entry, int key) {
* @returns `true` if found
* @returns `false` if not found
*/
bool
searchingProber
(
Entry
entry
,
int
key
)
{
bool
searchingProber
(
const
Entry
&
entry
,
int
key
)
{
if
(
entry
.
key
==
key
)
{
return
true
;
}
...
...
hashing/linear_probing_hash_table.cpp
浏览文件 @
842c5fb2
...
...
@@ -18,15 +18,10 @@ using std::string;
namespace
{
// keep the code local to this file by assigning them to an unnamed
// namespace
/** Node object that holds key */
struct
Entry
{
explicit
Entry
(
int
key
=
notPresent
)
:
key
(
key
)
{}
///< constructor
int
key
;
///< key value
};
// fwd declarations
bool
putProber
(
Entry
entry
,
int
key
);
bool
searchingProber
(
Entry
entry
,
int
key
);
using
Entry
=
struct
Entry
;
bool
putProber
(
const
Entry
&
entry
,
int
key
);
bool
searchingProber
(
const
Entry
&
entry
,
int
key
);
void
add
(
int
key
);
// Undocumented globals
...
...
@@ -37,6 +32,12 @@ int tomb = -1;
int
size
;
bool
rehashing
;
/** Node object that holds key */
struct
Entry
{
explicit
Entry
(
int
key
=
notPresent
)
:
key
(
key
)
{}
///< constructor
int
key
;
///< key value
};
/**
* @brief Hash a key. Uses the STL library's `std::hash()` function.
*
...
...
hashing/quadratic_probing_hash_table.cpp
浏览文件 @
842c5fb2
...
...
@@ -18,8 +18,8 @@ namespace { // keep the code local to this file by assigning them to an unnamed
// fwd declarations
using
Entry
=
struct
Entry
;
bool
putProber
(
Entry
entry
,
int
key
);
bool
searchingProber
(
Entry
entry
,
int
key
);
bool
putProber
(
const
Entry
&
entry
,
int
key
);
bool
searchingProber
(
const
Entry
&
entry
,
int
key
);
void
add
(
int
key
);
// globals
...
...
@@ -87,7 +87,7 @@ int quadraticProbe(int key, bool searching) {
}
// Finds empty spot
bool
putProber
(
Entry
entry
,
int
key
)
{
bool
putProber
(
const
Entry
&
entry
,
int
key
)
{
if
(
entry
.
key
==
notPresent
||
entry
.
key
==
tomb
)
{
return
true
;
}
...
...
@@ -95,7 +95,7 @@ bool putProber(Entry entry, int key) {
}
// Looks for a matching key
bool
searchingProber
(
Entry
entry
,
int
key
)
{
bool
searchingProber
(
const
Entry
&
entry
,
int
key
)
{
if
(
entry
.
key
==
key
)
{
return
true
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录