Error_codeHash_table::retrieve( const Key &target,Record &found) const { int probe_count, // counter to besure that table is not full increment, // increment used for quadratic probing probe; // position currently probed in the hash table Key null; // null key for comparison purposes null.make_blank(); probe = hash(target); probe_count = 0; increment = 1; while ((Key)table[probe] != && // Isthe location empty? (Key) table[probe] != target // Search Successful? && probe_count < (hash_size +1) / 2) { // Full table? probe_count++; probe = (probe + increment) % hash_size; increment += 2; // Prepare increment for next iteration } if ((Key)table[probe] == ){ found = table[probe]; return success; } else return not_present; }