Форум программистов, компьютерный форум CyberForum.ru

Данные о читателях должны быть организованны в виде хеш-таблицы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Подсчитать количество слов до запятой, и вывести их построчно http://www.cyberforum.ru/cpp-beginners/thread1067872.html
помогите разобраться как подсчитать количество слов и вывести их построчно у меня выходит не то идет вывод слов что стоят перед запятой. #include "stdafx.h" #include <iostream> #include <fstream> #include <string> using namespace std;
C++ Составление слова из массива из четырёх других // ConsoleApplication1.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include<conio.h> #include<stdio.h> #include<string.h> int _tmain(int argc, _TCHAR* argv) ;void main() { http://www.cyberforum.ru/cpp-beginners/thread1067860.html
C++ Бинарный файл
Задание: Задан бинарный файл с отрицательными и положительными целые числа. Записать в другой бинарный файл сначала отрицательные элементы, а потом положительные. Прошу помочь с написанием функции outin, в которой мы будем записывать в новый бинарный файл элементы. Заранее спасибо!) #include <cstdlib> #include <stdio.h> #include <fstream>
C++ OpenGL. Передать в процедуру рисования Draw коэффициенты прямой, вычисляемые в другой процедуре
Пишу программу, используя OPENGL.Проблема следующая, как мне передать в процедуру рисования Draw коэффициенты прямой,вычисляемые в другой процедуре, что только не пробовал.Если вызвать эту процедуру в Draw, то Draw почему-то выполняется 2 раза с интервалом в 10 секунд, то что нужно рисуется, но в итоге окно opengl не отвечает...в чем проблема?почему когда я вызываю процедуру в Draw, в программе...
C++ Выделить из строки имя файла без расширения http://www.cyberforum.ru/cpp-beginners/thread1067832.html
Дана строка, содержащая полное имя файла, то есть имя диска, список ката- логов (путь), собственно имя и расширение. Выделить из этой строки имя файла (без расширения). ничего не выводит. #include<iostream> #include <string> #include<math.h> #include<windows.h>
C++ Использование классом объектов другого класса Допустим есть два класса, назовём их First и Second, которые используют друг друга. Объявления классов в заголовочных файлах, определения в cpp: Пример: First.h #include "Second.h" class First { int field; подробнее

Показать сообщение отдельно
__General__
24 / 24 / 3
Регистрация: 04.01.2014
Сообщений: 91
Завершенные тесты: 2
10.01.2014, 22:27     Данные о читателях должны быть организованны в виде хеш-таблицы
dopasdk, Судя по всему, вы не совсем правильно поняли задачу.
Цитата Сообщение от dopasdk Посмотреть сообщение
я представляю эти данные с помощью двумерного массива,где первый столбец это номер читательского билета
Нет, вы представляете данные с помощью массива описанных вами структур, в котором, если ключ - NNNN - 4х-значное число - то не меньше 10000 элементов.

Добавлено через 12 минут
С хеш таблицей, как со структурой данных, вы можете ознакомиться хотя бы на википедии:
http://ru.wikipedia.org/wiki/%D5%E5%...E1%EB%E8%F6%E0

Прелесть этой структуры данных состоит именно в том, что в среднем операции вставки, удаления и поиска элемента по ключу занимают константное время. В вашем же примере:
Цитата Сообщение от dopasdk Посмотреть сообщение
Я ввожу к примеру 0003 и мой цикл пробегает по первому столбцу и останавливается на той строчке у которой NNNN = 0003
Добавлено через 10 минут
операции - линейные (O(n)).

Из условия задачи мне не ясно одно, а именно, могут ли встречаться одинаковые регистрационные номера у различных клиентов, то есть, уникальны ли первичные ключи.
Если ключи уникальны, то проблем нет.
А если не уникальны, то могут возникнуть коллизии: ячейка (элемент массива), в которую вы пытаетесь добавить новый экземпляр, уже занята.

В этом случае существует несколько способов разрешения коллизий.
Например, можно в этом случае идти подряд по массиву до первой свободной ячейки таблицы.

Также бывает удобно использовать не открытое хеширование, а внешние цепи: в каждом элементе таблицы(массива) хранить не один экземпляр - а список экземпляров с одинаковыми ключами.

Добавлено через 27 секунд
операции - линейные (O(n)).

Из условия задачи мне не ясно одно, а именно, могут ли встречаться одинаковые регистрационные номера у различных клиентов, то есть, уникальны ли первичные ключи.
Если ключи уникальны, то проблем нет.
А если не уникальны, то могут возникнуть коллизии: ячейка (элемент массива), в которую вы пытаетесь добавить новый экземпляр, уже занята.

В этом случае существует несколько способов разрешения коллизий.
Например, можно в этом случае идти подряд по массиву до первой свободной ячейки таблицы.

Также бывает удобно использовать не открытое хеширование, а внешние цепи: в каждом элементе таблицы(массива) хранить не один экземпляр - а список экземпляров с одинаковыми ключами.
 
Текущее время: 06:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru