Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
ant93
0 / 0 / 0
Регистрация: 16.02.2013
Сообщений: 33
#1

хеширование - C++

26.04.2013, 17:58. Просмотров 399. Ответов 0
Метки нет (Все метки)

Написать функцию int incl_lexm (char *p_lexm, char type _lexm), которая методом хеширования для строки, адресуемой p_lexm, определяет свободную позицию в таблице tabl, и если в ней отсутствует идентичная строка, то включает ее адрес в таблицу. Возвращается индекс включения адреса или индекс адреса идентичной строки. Помимо адреса включается тип лексемы: идентификатор или константа (признаки "i" и "с").Если включается константа, то ее значение переводится в число и, если оно по модулю больше 215 -1 , то заменяется на 215 -1. Полученное число вносится в таблицу. Если адрес нельзя включить в таблицу, то выдается сообщение: "не могу включить аргумент в таблицу из-за переполнения".

Метод хеширования.
Из кода каждой литеры удаляются три старших разряда, оставшиеся разряды трех кодов объединяются в 15-ти битовый код и интерпретируются как код двоичного числа. Все двоичные числа, полученные из всех кодов строки, суммируются и делятся с остатком на VTABL_ELM. Этот остаток и является стартовым числом при поиске свободного места в таблице.

Если указанная позиция свободна, то выполняются включения, иначе строки проверяются на идентичность. Если строки не идентичны, то следующая позиция отстоит от предыдущей на остаток от деления первого кодового числа на STEP_HESH. Этот процесс повторяется до тех пор, пока не будет найдена идентичная строка или свободная, или получено вновь стартовое число, что означает переполнение таблицы и невозможности включить в нее новый элемент.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.04.2013, 17:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос хеширование (C++):

Хеширование - C++
Помогите, пожалуйста.Поиск в хеш-таблицах. Написать класс Group. В группу должны входить студенты, содержащие следующие данные: -фамилия ...

Хеширование - C++
Вот такая проблема... Точнее их много, но если по порядку, то сейчас только такая проблема: Хеширование, методом середины квадрата,...

Хеширование - C++
У меня есть вариант хешировани данных для ГОСТ 28147-89. Помогите ее переделать под ГОСТ Р 34.11-94. вот...

Хеширование - C++
1. Реализовать интерактивное приложение со следующей функциональностью, использующее вышеописанный модуль. a. Создание хеш-таблицы...

Хеширование - C++
1. Реализовать интерактивное приложение со следующей функциональностью, использующее вышеописанный модуль. a. Создание хеш-таблицы...

Хеширование файлов - C++
Доброго времени суток) Я в этой теме пока мало что понимаю, но может мне может кто то объяснить, как хешируются файлы (такие как .exe)....

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.04.2013, 17:58
Привет! Вот еще темы с ответами:

Хеширование строки - C++
Всем привет! Знаю што на си++ можно захешыровать строку в алгоритм md5 несколькима способами, нашел код хешырования на чистом си, но...

Хеширование чисел - C++
Здравствуйте, прочел пост taras atavin И стало интересно, действительно ли такое можно сделать ? реально ли хешировать число до 70...

открытое хеширование - C++
помогите запустить программу ошибка в 13 строке. #include <stdio.h> #include <stdlib.h> #include <stdbool.h> typedef struct...

Хеширование SHA-1 - C++
Подскажите как сделать с текстом? Это отдельная программа, которая считывает с файла или она сразу должна прописывать в коде генерирования...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru