103 lines
2.2 KiB
C
103 lines
2.2 KiB
C
////
|
||
//// Ðåàëèçàöèÿ ñëîâàðÿ íà äâîè÷íîì äåðåâå ïîèñêà
|
||
////
|
||
//
|
||
//#define _CRT_SECURE_NO_WARNINGS
|
||
//#include <string.h>
|
||
//#include <stdlib.h>
|
||
//#include "Dict.h"
|
||
//
|
||
//
|
||
//// Óçåë äåðåâà
|
||
//struct NodeTree {
|
||
// char* word;
|
||
// struct NodeTree* left;
|
||
// struct NodeTree* right;
|
||
//};
|
||
//
|
||
//// Êîðåíü äåðåâà
|
||
//struct NodeTree* root = NULL;
|
||
//
|
||
//
|
||
//
|
||
//struct NodeTree* addElement(struct NodeTree* p, char* word)
|
||
//{
|
||
// int cond;
|
||
//
|
||
// if (p == NULL) {
|
||
// p = (struct NodeTree*)malloc(sizeof(struct NodeTree));
|
||
// p->word = (char*)calloc(strlen(word) + 1, sizeof(char));
|
||
// strcpy(p->word, word);
|
||
// p->left = p->right = NULL;
|
||
// }
|
||
// else if ((cond = strcmp(word, p->word)) == 0) {
|
||
// // âñòàâëÿåìîå ñëîâî ñîâïàäàåò
|
||
// // ñ óæå èìåþùèìñÿ - íè÷åãî íå äåëàåì
|
||
// }
|
||
// else if (cond < 0) {
|
||
// // âñòàâëÿåìîå ñëîâî ìåíüøå
|
||
// // êîðíÿ ïîääåðåâà
|
||
// p->left = addElement(p->left, word);
|
||
// }
|
||
// else {
|
||
// // âñòàâëÿåìîå ñëîâî áîëüøå
|
||
// // êîðíÿ ïîääåðåâà
|
||
// p->right = addElement(p->right, word);
|
||
// }
|
||
// return p;
|
||
//}
|
||
//
|
||
//
|
||
//
|
||
//void clearTree(struct NodeTree* p) {
|
||
// if (p != NULL) {
|
||
// clearTree(p->left);
|
||
// clearTree(p->right);
|
||
// free(p->word);
|
||
// free(p);
|
||
// }
|
||
//}
|
||
//
|
||
//int containElement(struct NodeTree* p, char* word) {
|
||
// int cond;
|
||
// if (p == NULL) {
|
||
// return 0;
|
||
// }
|
||
// else if ((cond = strcmp(word, p->word)) == 0) {
|
||
// return 1;
|
||
// }
|
||
// else if (cond < 0) {
|
||
// return containElement(p->left, word);
|
||
// }
|
||
// else {
|
||
// return containElement(p->right, word);
|
||
// }
|
||
//}
|
||
//
|
||
//
|
||
//
|
||
///* INSERT – äîáàâëÿåò ýëåìåíò â ìíîæåñòâî.
|
||
//Ìíîæåñòâî – ñîäåðæèò òîëüêî óíèêàëüíûå ýëåìåíòû.
|
||
//Ïðè ïîâòîðíîì äîáàâëåíèè ýëåìåíòà â ìíîæåñòâî, ìíîæåñòâî íå èçìåíÿåòñÿ.*/
|
||
//void Insert(char* word) {
|
||
// root = addElement(root, word);
|
||
//}
|
||
//
|
||
///* MEMBER – ñîîáùàåò, ÿâëÿåòñÿ ëè óêàçàííûé ýëåìåíò ÷ëåíîì äàííîãî ìíîæåñòâà èëè íåò.*/
|
||
//int Member(char* word) {
|
||
// return containElement(root, word);
|
||
//}
|
||
//
|
||
///* CREATE - ñîçäàåò ñëîâàðü.
|
||
//Âûçûâàåòñÿ ïåðåä íà÷àëîì èñïîëüçîâàíèÿ ñëîâàðÿ. */
|
||
//void Create() {
|
||
// root = NULL;
|
||
//}
|
||
//
|
||
///* DESTROY - óíè÷òîæàåò ñëîâàðü.
|
||
//Âûçûâàåòñÿ ïîñëå îêîí÷àíèÿ èñïîëüçîâàíèÿ ñëîâàðÿ. */
|
||
//void Destroy() {
|
||
// clearTree(root);
|
||
// root = NULL;
|
||
//}
|