Здравствуйтe, Хочу написать собственное дерево на языке си, каждый узел которого имеет более двух потомков. Я создал структуру, в которую входит значение узла, количество потомков и массив указателей на этих потомков, и, пока что, один метод - создание нового узла дерева. Так вот, на данном этапе максимальная глубина создаваемого мною дерева = 2. Что я делаю не так? Как сделать так, чтобы была возможность углубляться внутрь?
Вот код:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct treeNode
{
char data;
int childs;
struct treeNode **childPtr;
}treeNode;
void insertNode(treeNode **treePtr, char data);
void insertNode(treeNode **treePtr, char data)
{
int i;
treeNode *newPtr = NULL;
if(*treePtr == NULL)
{
*treePtr = (treeNode *)malloc(sizeof(treeNode));
(*treePtr)->data = data;
(*treePtr)->childs = 0;
(*treePtr)->childPtr = NULL;
}
else
{
(*treePtr)->childPtr = (treeNode **)realloc((*treePtr)->childPtr, ++((*treePtr)->childs) * sizeof(treeNode));
(*treePtr)->childPtr[((*treePtr)->childs) - 1] = newPtr;
insertNode(&((*treePtr)->childPtr[((*treePtr)->childs) - 1]), data);
}
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
У меня есть класс HealthyFood и enum Fruits{ apple, pear, peach, orange}Я создаю в ранее сказанном классе переменную fruit типа данных Fruits и хочу создать сеттер для...
У меня есть несколько классов, в которых есть функции lock() и unlock(), которые управляют переменной класса bool lockЕсли lock == true, то объект становится...