gpt4 book ai didi

c - 如何捕获此交换树代码中的数据?

转载 作者:行者123 更新时间:2023-11-30 19:28:25 24 4
gpt4 key购买 nike

这段代码是在其创建者的帮助下编写的。我想给代码提供我想要的实际数字。我意识到我必须做这样的事情: 根->左->左->左 创建更多级别

但是如果我想创建更多关卡,我该如何将我的想法融入到这段代码中呢??

我的意思是继续这个学期只是浪费时间!

#include <stdio.h>
#include <stdlib.h>

struct node
{
int data;
struct node* left;
struct node* right;
};

struct node* newNode(int data)
{
struct node* node = (struct node*)malloc(sizeof(struct node));
node->data = data;
node->left = NULL;
node->right = NULL;
return(node);
}

void printInorder(struct node* node)
{
if (node == NULL)
return;
printInorder(node->left);
printf("%d ", node->data);
printInorder(node->right);
}


void swapTree(struct node*node)
{
if(node==NULL) return;
struct node*temp=node->left;
node->left=node->right;
node->right=temp;
swapTree(node->left);
swapTree(node->right);
}
int main()
{
struct node *root = newNode(1);
root->left = newNode(2);
root->right = newNode(3);
root->left->left = newNode(4);
root->left->right = newNode(5);
printf("\n Inorder traversal of binary tree is \n");
printInorder(root);
swapTree(root);
printf("\n After swap Inorder traversal of binary tree is \n");
printInorder(root);

return 0;
}

最佳答案

您可以执行以下操作:

int value;
scanf("%d", &value);
struct node *inputNode = newNode(value);

此后,inputNode 将指向一个以 value 作为其 data 字段的节点。您需要实现一个函数,该函数接受该指针并将其插入树中的正确位置。这取决于您要实现的树的类型。

关于c - 如何捕获此交换树代码中的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53965662/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com