mirror of
https://gitlab.com/klmp200/LO27.git
synced 2024-12-23 02:31:08 +00:00
commit
f74cd2808a
@ -23,6 +23,14 @@ cellElement * CreateCellElem(){
|
||||
return elem;
|
||||
}
|
||||
|
||||
bool is_leaf(cellElement* tree){
|
||||
if (tree->nextCol == NULL && tree->nextRow == NULL){
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
int AddNextCol(cellElement* tree){
|
||||
|
||||
cellElement * elem = NULL;
|
||||
@ -60,7 +68,7 @@ int AddNextRow(cellElement* tree){
|
||||
|
||||
elem->value = true;
|
||||
elem->nextRow = NULL;
|
||||
elem->nextRow = NULL;
|
||||
elem->nextCol = NULL;
|
||||
if (tree->nextRow == NULL){
|
||||
tree->nextRow = elem;
|
||||
}else{
|
||||
@ -73,9 +81,7 @@ void removeNextCol(cellElement* tree){
|
||||
printf("---removeNextCol---\n");
|
||||
|
||||
if (tree->nextCol != NULL){
|
||||
cellElement * elem = tree->nextCol;
|
||||
free(elem);
|
||||
elem = NULL;
|
||||
free(tree->nextCol);
|
||||
tree->nextCol = NULL;
|
||||
}
|
||||
|
||||
@ -85,9 +91,7 @@ void removeNextRow(cellElement* tree){
|
||||
printf("---removeNextRow---\n");
|
||||
|
||||
if (tree->nextRow != NULL){
|
||||
cellElement* elem = tree->nextRow;
|
||||
free(elem);
|
||||
elem =NULL;
|
||||
free(tree->nextRow);
|
||||
tree->nextRow = NULL;
|
||||
}
|
||||
|
||||
@ -95,16 +99,16 @@ void removeNextRow(cellElement* tree){
|
||||
void recursivePrint(cellElement * tree){
|
||||
if (tree != NULL){
|
||||
printf("Elem : x: %d y: %d \n",tree->colIndex,tree->rowIndex);
|
||||
if (tree->nextCol != NULL){
|
||||
recursivePrint(tree->nextCol);
|
||||
}
|
||||
if (tree->nextRow != NULL){
|
||||
recursivePrint(tree->nextRow);
|
||||
}
|
||||
if (tree->nextCol == NULL && tree->nextCol == NULL){
|
||||
if (is_leaf(tree)){
|
||||
printf("leaf\n");
|
||||
} else {
|
||||
if (tree->nextCol != NULL){
|
||||
recursivePrint(tree->nextCol);
|
||||
}
|
||||
if (tree->nextRow != NULL){
|
||||
recursivePrint(tree->nextRow);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
6
main.c
6
main.c
@ -12,19 +12,21 @@
|
||||
#include <list.h>
|
||||
|
||||
int main(int argc, char **argv){
|
||||
|
||||
|
||||
cellElement * tree = NULL;
|
||||
tree = CreateCellElem();
|
||||
tree->colIndex = 1;
|
||||
tree->rowIndex = 1;
|
||||
AddNextRow(tree);
|
||||
tree->nextRow->colIndex = 2;
|
||||
tree->nextRow->rowIndex = 2;
|
||||
AddNextCol(tree);
|
||||
tree->nextCol->colIndex = 3;
|
||||
tree->nextCol->rowIndex = 2;
|
||||
recursivePrint(tree);
|
||||
removeNextRow(tree);
|
||||
removeNextCol(tree);
|
||||
|
||||
recursivePrint(tree);
|
||||
|
||||
return 0;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user