По сути, я создал двоичное дерево. Мое двоичное дерево будет содержать строки, которые могут иметь изменяющийся регистр, т. Е. Hello, hello, HELLO.
Мне нужно реализовать функцию, чтобы при обходе дерева, то есть при поиске имени, вводимого через пользователя, независимо от того, какой пользователь вводит регистр, он всегда найдет имя. поиск Здравствуйте, HELLO все равно будет найден и отображен, и наоборот.
В моем дереве используется рекурсивная структура, поэтому я не могу придумать простой способ реализации функции toupper или другого метода в моем коде.
Проблема в том, что мне нужно найти Томаса, даже если, например, введен Томас.
Но я не знаю, где я могу реализовать такую функцию, поскольку цель состоит не в том, чтобы манипулировать вводом в Дереве.
Любой совет велик:)
UPDATE:
else if ((comparison = strcmp(search, root->name)) == 0) {
return root;
} else if ((comparison = strcmp(search, root->name)) < 0) {
return SearchTree(root->left, search);
} else if ((comparison = strcmp(search, root->name)) > 0)
return SearchTree(root->right, search); `
Это мои сравнения и рекурсивные вызовы. Поиск - это строка, содержащая пользовательский ввод, но добавление toupper к любому из этих рекурсивных вызовов приведет только к ошибке.
Томас.