Как перебрать хеш с ++ - PullRequest
0 голосов
/ 08 июня 2018

Я импортирую данные CSV и пытаюсь создать из них хэш-таблицу.У меня проблемы с установкой условного оператора, чтобы проверить, пусто ли ведро.Я могу поместить информацию в корзину, но сейчас она перезаписывается.Может ли кто-нибудь помочь мне понять условное утверждение, чтобы я мог вставить ставки в мой хэш?Это для школы, иначе я бы использовал стандартную библиотеку.

const unsigned int DEFAULT_SIZE = 179;

// forward declarations
double strToDouble(string str, char ch);

// define a structure to hold bid information
struct Bid {
string bidId; // unique identifier
string title;
string fund;
double amount;
Bid() {
    amount = 0.0;
}
};

/**
 * Default constructor
 */
HashTable::HashTable() {
// Initialize the structures used to hold bids
for (int i = 0; i < DEFAULT_SIZE; i++)
Table[i] = new Node;
} 

unsigned int HashTable::hash(string key, const int DEFAULT_SIZE) {
//Implement logic to calculate a hash value
int index, sum = 0;
for (int i = 0; i < key.length(); i++)
   sum += key[i];
   index = sum % DEFAULT_SIZE;
   return index;

}

void HashTable::Insert(Bid bid) {
// FIXME (5): Implement logic to insert a bid
int i;
Nodeptr newNode = new Node (bid);
int index = hash(bid.bidId, DEFAULT_SIZE);

/* if empty space */
Table[index] = newNode;
/*Else create new node and check if it null*/


}
...