//// //// Реализация АТД «Словарь» на Структуре данных «Односвязанный список» //// //#define _CRT_SECURE_NO_WARNINGS //#include //#include // //#include "Dict.h" // // //// элемент односвязанного списка //struct Node { // char* word; // struct Node* next; //}; // // //// Первый элемент списка //struct Node* first = NULL; ///* INSERT – добавляет элемент в множество. //Множество – содержит только уникальные элементы. //При повторном добавлении элемента в множество, множество не изменяется. //ЗДЕСЬ НЕТ ПРОВЕРКИ НА ДУБЛИРОВАНИЕ!!!! //*/ //void Insert(char* word) { // struct Node* newNode = (struct Node*)malloc(sizeof(struct Node)); // // newNode->next = first; // newNode->word = (char*)calloc(strlen(word) + 1, sizeof(char)); // strcpy(newNode->word, word); // // first = newNode; //} // // ///* MEMBER – сообщает, является ли указанный элемент членом данного множества или нет. */ //int Member(char* word) { // struct Node* ptr = first; // while (ptr != NULL) { // if (strcmp(ptr->word, word) == 0) { // return 1; // } // ptr = ptr->next; // } // return 0; //} // // ///* CREATE - создает словарь. //Вызывается перед началом использования словаря. */ //void Create() { // first = NULL; //} // // ///* DESTROY - уничтожает словарь. //Вызывается после окончания использования словаря. */ //void Destroy() { // while (first != NULL) { // struct Node* delNode = first; // first = first->next; // // free(delNode->word); // free(delNode); // } //}