首页 > > 详细

program编程讲解、辅导C++语言、C++程序设计调试辅导Web开发|辅导Database

Develop a C++ program that applies a parallel hash table
Design and implement a hash table with separate chaining and linear probing
Apply parallel programming concepts with the use of OpenMP
II. Prerequisites:
Before starting this programming assignment, participants should be able to:
Apply and implement class templates
Design, implement, and test medium programs in C++
Edit, build, debug, and run programs through a Linux environment
Describe the operations of a hash table
Describe the purpose of parallel programming
Identify parallel tasks
III. Overview & Requirements:
What is required?
For this project, you will implement functions for TWO hash table implementations.
Initially your implementations for both hash tables will be run in serial. A second version
of the “ProbingHash will be required, in which you add some parallel programming
constructs. You are being tasked with implementing both a separate chaining and a linear
probing hash table. The starting code base includes abstract class called “Hash”, which
the two concrete classes “ChainingHash” and “ProbingHash” are derived from. Please start
with the code. The file Hash.h includes a description of the interface and what you need to
implement with it.
The interface mostly follows the std::unordered_map interface, but it has been limited
a bit to avoid iterators and some of the more complex return type behaviors. The Hash.h
file has the actual interfaces, but here is the summary:
// Hash class interface notes
// ******************PUBLIC OPERATIONS*********************
// bool empty( ) --> Test for empty hash
// int size( ) --> Quantity of (non-deleted) elements in hash
// V& at( const K& k ) --> Returns the value with key k
// V& operator[]( const K& k ) --> Returns the value with key k
// int count( const K& key ) --> Returns the number of elements with key k
// bool emplace ( const K& key, V& value ) --> Adds element with key, true if successful
// bool insert( const pair

联系我们
  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-21:00
  • 微信:codinghelp
热点标签

联系我们 - QQ: 99515681 微信:codinghelp
程序辅导网!