题目:输入一个整数和一棵二元树。
从树的根结点开始往下访问一直到叶结点所经过的所有结点形成一条路径。
打印出和与输入整数相等的所有路径。
例如 输入整数22和如下二元树
10
/ \
5 12
/ \
4 7
则打印出两条路径:10, 12和10, 5, 7。
采用先序遍历以及 栈的...
分类:
编程语言 时间:
2015-01-13 14:32:38
阅读次数:
178
最近大三学生让我去讲课,我就恶补了最大流算法,笔者认为最重要的是让学弟学妹们入门,知道算法怎么来的?为什么是这样?理解的话提出自己的改进,然后再看看Dinic、SAP和ISAP算法…..一、概念引入 首先要先清楚最大流的含义,就是说从源点到经过的所有路径的最终到达汇点的所有流量和。 流网络G=(V....
分类:
编程语言 时间:
2014-12-25 21:45:39
阅读次数:
190
C#基础知识之二
1、 静态字段、静态成员:被类的所有实例共享,对其改变,对所有实例都可见。
2、 声明为静态的有:字段、方法、属性、构造函数、运算符、事件。
3、 常量与静态量不同:常量没有自己的存储位置,在编译时被编译器替换。
4、 类属性与类字段不同:属性是一个函数成员,它不为数据存储分配内存并执行代码。
5、 属性get访问器的所有路径必须包含一条return语句,返回...
题目描述:输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。输入:每个测试案例包括n+1行:第一行为2个整数n,k(1#include #include using namespace std; struct....
分类:
其他好文 时间:
2014-12-16 16:56:58
阅读次数:
135
1.红黑树描述:它或是一颗空树,或是具有下面属性的二叉搜索树: 1)节点非红即黑; 2)根节点是黑色; 3)所有NULL结点称为叶子节点,且认为颜色为黑 ; 4)所有红节点的子节点都为黑色; 5)从任一节点到其叶子节点的所有路径上都包含相同数目的黑节点。 插入和删除操作时间可以保持为...
分类:
其他好文 时间:
2014-12-12 16:13:24
阅读次数:
393
最主要的“画”的功能是在drawRect函数中完成,而所有路径或者点得拼接是在touchesBegan、touchesMoved和touchesEnded三个函数中完成的。...
分类:
移动开发 时间:
2014-12-12 15:02:53
阅读次数:
168
BFS是较为直观的解法。缺点是要借用不少数据结构的帮忙,也许可以想办法避免。
在需要树的路径时,往往会重新搞一个数据结构,保存子->父的回溯链,这个容易实现。
但确实浪费了时间和空间,避免方法之一是冗余存储。每个节点中按顺序存储所有祖先节点信息。
如此, 当该节点被选中时,它的祖先自然也就确定了。本题的数字可以用一分隔符,例如“#”分割,以完成最后的答案的构造。
/**
* Defini...
分类:
其他好文 时间:
2014-12-09 21:35:32
阅读次数:
177
这道题目DFS用得非常不自信。
(1)递归的用得不够大胆,过分考虑细节了,应该站得高些。
(2)思路厘清之后,要注意状态值的修改,就是状态恢复。深度优先走到底之后,需要返回,此时对应的状态也应该返回。例如之前放到堆栈/vector里的状态数据要弹出来。
/**
* Definition for binary tree
* struct TreeNode {
* int val;...
分类:
其他好文 时间:
2014-12-09 17:53:30
阅读次数:
142
输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。
#include
#include
#include
using namespace std;
struct BinaryTreeNode{
int value;
BinaryTreeNode* left;
BinaryTreeN...
分类:
其他好文 时间:
2014-12-08 15:42:26
阅读次数:
156
4.9 给定一颗二叉树,其中每个结点都含有一个数值。设计一个算法,打印结点数值总和等于某个给定值的所有路径。注意,路径不一定非得从二叉树的根节点或叶子节点开始或结束。类似于leetcode:Path Sum IIC++实现代码:(使用了双重的递归)对于不含有parent指针域时。#include#i...
分类:
其他好文 时间:
2014-12-06 16:45:05
阅读次数:
291