zoukankan      html  css  js  c++  java
  • 二叉树路径和

    //一棵二叉树每个结点包含一个整数,请设计一个算法输出所有满足条件的路径:此路径上的所有结点之和等于给定值。注意此类路径不要求必须从根节点开始
    void printBuffer(vector<int> buffer, int level, int i1)
    {
        for (int i=level;i<=i1;i++)
        {
            cout<<buffer[i]<<" ";
        }
        cout<<endl;
    }
    void findTarget(TreeNode *head, int target, vector<int> buffer, int level)
    {
        if(head==NULL)return;
        int curSum=target;
        buffer.push_back(head->data);
        for (int i=level;i>=0;i--)
        {
            curSum-=buffer[i];
            if(curSum==0)
                printBuffer(buffer, i, level);
        }
        findTarget(head->left, target, buffer, level+1);
        buffer.pop_back();
        level--;
        findTarget(head->right, target, buffer, level+1);
    }
  • 相关阅读:
    数据库
    php
    123
    es5新增
    正则表达式
    cookie
    Event事件下
    事件对象
    dva框架的下拉菜单的父子关系
    dva框架的table表格---删除
  • 原文地址:https://www.cnblogs.com/Vae1990Silence/p/4395949.html
Copyright © 2011-2022 走看看