嗨,老铁,欢迎来到我的博客!

如果觉得我的内容还不错的话,可以关注下我在 segmentfault.com 上的直播。我主要从事 PHP 和 Java 方面的开发,《深入 PHP 内核》作者之一。

[视频直播] PHP 进阶之路 - 亿级 pv 网站架构的技术细节与套路 直播中我将毫无保留的分享我这六年的全部工作经验和踩坑的故事,以及会穿插着一些面试中的 考点难点加分点

周梦康 发表于 2015-06-21 8237 次浏览 标签 : C

免费领取阿里云优惠券 我的直播 - 《PHP 进阶之路》

如果用我大 PHP 来弄,那的确很简单。但是对 C 我是新手,想当然是写了如下代码的,但是我怎么也跑不通:(我 web 检测网站测试 ok,但是在 xcode 里怎么也跑不通)

#include <stdio.h>

struct TreeNode {
    int val;
    struct TreeNode* left;
    struct TreeNode* right;
};

struct TreeNode* invertTree(struct TreeNode* node){
    if(node == NULL){
        return node;
    }
    struct TreeNode* tmp = node->left;
    node->left = invertTree(node->right);
    node->right = invertTree(tmp);
    return node;
}

int main(){
//        4
//      /   \
//     2     7
//    / \   / \
//   1   3 6   9
    
    struct TreeNode rootNode;
    struct TreeNode leftNode;
    struct TreeNode rightNode;
    
    struct TreeNode leftNode1;
    struct TreeNode leftNode2;
    
    struct TreeNode rightNode1;
    struct TreeNode rightNode2;
    
    
    leftNode1.val = 1;
    leftNode1.left = NULL;
    leftNode1.right = NULL;

    leftNode2.val = 3;
    leftNode2.left = NULL;
    leftNode2.right = NULL;
    
    leftNode.val = 2;
    leftNode.left = &leftNode1;
    leftNode.right = &leftNode2;

    rightNode1.val = 6;
    rightNode1.left = NULL;
    rightNode1.right = NULL;
    
    rightNode2.val = 9;
    rightNode2.left = NULL;
    rightNode2.right = NULL;
    
    rightNode.val = 7;
    rightNode2.left = &rightNode1;
    rightNode2.right = &rightNode2;
    
    rootNode.val = 4;
    rootNode.left = &leftNode;
    rootNode.right = &rightNode;

    invertTree(&rootNode);
}

嗨,老铁,欢迎来到我的博客!

如果觉得我的内容还不错的话,可以关注下我在 segmentfault.com 上的直播。我主要从事 PHP 和 Java 方面的开发,《深入 PHP 内核》作者之一。

[视频直播] PHP 进阶之路 - 亿级 pv 网站架构的技术细节与套路 直播中我将毫无保留的分享我这六年的全部工作经验和踩坑的故事,以及会穿插着一些面试中的 考点难点加分点

评论列表

回复 王志刚 2015-06-23 00:15:26
厉害