zoukankan      html  css  js  c++  java
  • 九度 1521:二叉树的镜像

    题目描述:

    输入一个二叉树,输出其镜像。

    思路

    1. 二叉树镜像的判定, 镜像树的建立是类似的题目. 

    2. 代码的框架是 func(root1, root2). 函数体内部是 func(root1->left, root->right), func(root->left, root->right)

    3. 建立的方法都是 bottomUp, 这个过程可以通过 func 的返回实现, 也可以通过参数实现. 

    代码 未通过九度测试, 以后再改吧

    #include <iostream>
    #include <stdio.h>
    #include <string>
    #include <cstdlib>
    #include <cstring>
    using namespace std;
    
    char arr[10000];
    string str;
    
    void myRerverse(int len) {
        int i = 0, j = len-1;
        while(i < j) {
            swap(arr[i], arr[j]);
            i++;
            j--;
        }
    }
    
    int main() {
        freopen("testcase.txt", "r", stdin);
        int n;
        string str_n;
        while(getline(cin, str_n)) {
            n = atoi(str_n.c_str());
            if(n == 0) break;
            getline(cin, str);
            
            int i = 0;
            int len;
    
            while(i < n) {
                len = 0;
                while(i < n && str[i] == ' ') {
                    i++;
                    len ++;
                }
                if(len != 0)
                    cout << " ";
    
                len = 0;
                while(i < n && str[i] != ' ') {
                    arr[len] = str[i];
                    i++;
                    len++;
                }
                if(len != 0) {
                    myRerverse(len);
                    arr[len] = '';
                    printf("%s", arr);
                    
                }
    
            }
            cout << endl;
        }    
        return 0;
    }
  • 相关阅读:
    eslint 规则
    我的.eslintrc.js
    shell命令
    .sync 修饰符的理解
    【HNOI 2018】寻宝游戏
    【BZOJ 2820】YY的GCD
    【Luogu P2664】树上游戏
    【HAOI 2012】高速公路
    句摘
    【SCOI 2008】奖励关
  • 原文地址:https://www.cnblogs.com/xinsheng/p/3585318.html
Copyright © 2011-2022 走看看