当前位置: 首页 > news >正文

王道书 P191 思维拓展

/**
 * 王道书 P191 思维拓展
 *
 * ①算法思想
 *
 * ②算法设计
 */


#include <stdio.h>
#include <iostream>
#define MaxSize 100

typedef struct BiTreeNode{
    int data;
    BiTreeNode *lchild,*rchild;
}BiTreeNode,*BiTree;


//思维拓展
void FindPathEQData(BiTree T,int data){
    BiTree stack[MaxSize],p = T;
    int top = -1,tag[MaxSize] = {0};
    while(p || top != -1){
        if(p){
            stack[++top] = p;
            tag[top] = 1;
            p = p -> lchild;
        }else{
            if(tag[top] == 1){
                tag[top] = 2;
                p = stack[top];
                p = p -> rchild;
            }else{//说明是叶子节点了
                p = stack[top];
//                Visit(p);
                if(p -> lchild == NULL && p -> rchild == NULL){//如果是叶子节点
                    int sum = 0;
                    for (int i = 0; i <= top ; ++i) {
                        sum += stack[i] -> data;
                    }
                    if(sum == data){//打印路径
                        for (int i = 0; i <= top; ++i) {
                            printf("%d ",stack[i] -> data);
                        }
                    }
                }
                top --;
                p = NULL;
            }
        }
    }
}

相关文章:

  • matplotlib与django如何集成? matplotlib生成的图可以嵌入到网页吗?
  • 内卷室友系列 -- day01 计算机网络概论
  • mac显示器如何显示docker container中的gui请求
  • SpringCloud 三种服务调用方式详解
  • SpringCloud 三种服务调用方式,你知道几种?
  • 阿里二面:SpringCloud 有几种服务调用方式?
  • PHP HTTP 函数
  • springboot 整合使用redis发布订阅功能
  • mysql主从复制搭建
  • SpringCloud Alibaba实战——服务治理:实现服务调用的负载均衡
  • Windows如何编辑hosts
  • 背废完虐面试官!字节架构师8年心血终成《图解设计模式》手册
  • docker(5)-数据卷
  • Leetcode 1582. 二进制矩阵中的特殊位置
  • 网络数据采集-免费网络数据采集软件
  • 2017 前端面试准备 - 收藏集 - 掘金
  • 2019年如何成为全栈工程师?
  • CEF与代理
  • interface和setter,getter
  • k个最大的数及变种小结
  • vue-loader 源码解析系列之 selector
  • webpack项目中使用grunt监听文件变动自动打包编译
  • 爱情 北京女病人
  • 对象管理器(defineProperty)学习笔记
  • 复习Javascript专题(四):js中的深浅拷贝
  • 给初学者:JavaScript 中数组操作注意点
  • 检测对象或数组
  • 入门到放弃node系列之Hello Word篇
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 带你开发类似Pokemon Go的AR游戏
  • ​520就是要宠粉,你的心头书我买单
  • ​创新驱动,边缘计算领袖:亚马逊云科技海外服务器服务再进化
  • (0)Nginx 功能特性
  • (6)添加vue-cookie
  • (二十三)Flask之高频面试点
  • (分布式缓存)Redis分片集群
  • (一)spring cloud微服务分布式云架构 - Spring Cloud简介
  • (原创)攻击方式学习之(4) - 拒绝服务(DOS/DDOS/DRDOS)
  • (转)人的集合论——移山之道
  • .aanva
  • .net 简单实现MD5
  • .Net接口调试与案例
  • .NET项目中存在多个web.config文件时的加载顺序
  • []串口通信 零星笔记
  • [20161214]如何确定dbid.txt
  • [202209]mysql8.0 双主集群搭建 亲测可用
  • [ASP.NET MVC]如何定制Numeric属性/字段验证消息
  • [leetcode] Multiply Strings
  • [LeetCode]-225. 用队列实现栈-232. 用栈实现队列
  • [NEWS] J2SE5.0来了
  • [PAT练级笔记] 34 Basic Level 1034 有理数四则运算
  • [python 刷题] 2866 Beautiful Towers II
  • [SCM]源码管理 - perforce高级操作
  • [SpringBoot]接口的多实现:选择性注入SpringBoot接口的实现类
  • [svc]NFS存储企业场景及nfs最佳实战探究