root

二叉树中和为某一值的路径(python)

烂漫一生 提交于 2020-01-25 14:00:14
题目描述 输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前) # -*- coding:utf-8 -*- # class TreeNode: # def __init__(self, x): # self.val = x # self.left = None # self.right = None class Solution: # 返回二维列表,内部每个列表表示找到的路径 def FindPath(self, root, expectNumber): # write code here #首先要理解题意,是从根节点往子节点连。 #如果只有根节点或者找到叶子节点,我们就把其对应的val值返回 #如果不是叶子节点,我们分别对根节点的左子树、右子树进行递归, #直到找到叶子结点。然后遍历把叶子结点和父节点对应的val组成的序列返回上一层;如果没找到路径,其实也返回了序列,只不过是[] if not root: return [] if root and not root.left and not root.right and root.val==expectNumber: return [[root.val]] res = []

《剑指offer》— JavaScript(24)二叉树中和为某一值的路径

断了今生、忘了曾经 提交于 2020-01-25 13:42:34
二叉树中和为某一值的路径 题目描述   输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。 思路 前序遍历二叉树,每次更新当前路径的和curtSum; 判断当前结点是否是叶子结点,以及curtSum是否等于expectNumber。如果是,把当前路径保存在res结果中; 若不符合条件,则弹出此结点。 实现代码 /* function TreeNode(x) { this.val = x; this.left = null; this.right = null; } */ function FindPath(root, expectNumber) { var result = []; if (root === null) { return result; } dfsFind(root, expectNumber, [], 0, result); return result; } function dfsFind(root, expectNumber, path, currentSum, result) { currentSum += root.val; path.push(root.val); if (currentSum == expectNumber && root.left == null

【剑指offer】二叉树的深度

谁说胖子不能爱 提交于 2020-01-25 13:11:30
题目描述 输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。 解题思路 没啥好说的,就觉得自己牛逼极了! 代码 /** public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; } } */ public class Solution { public int TreeDepth ( TreeNode root ) { if ( root == null ) return 0 ; return 1 + ( TreeDepth ( root . left ) > TreeDepth ( root . right ) ? TreeDepth ( root . left ) : TreeDepth ( root . right ) ) ; } } 来源: CSDN 作者: 一直积累鸭 链接: https://blog.csdn.net/u010659877/article/details/103939064

Mutt failing as cron job with 'Couldn't lock /sent'

我的梦境 提交于 2020-01-25 08:53:07
问题 I have a bash script which picks up files from /tmp and emails them to me. I run this script as root and it works perfectly but I am trying to get this automated with crontab. Added the job to crontab, again running as root, and now I get 'Couldn't lock /sent'. I managed to confirm it's using the file in /root by changing it's name in Muttrc and tried permission at 600 and 777. (Also getting an error Segmentation fault, hoping that will go away if I fix the above.) Anyone any ideas why Mutt

OpenJudge 2775 文件结构“图”/ Poj 1057 FILE MAPPING

半城伤御伤魂 提交于 2020-01-25 08:52:50
1.链接地址: http://bailian.openjudge.cn/practice/2775 http://poj.org/problem?id=1057 2.题目: 总时间限制: 1000ms 内存限制: 65536kB 描述 在计算机上看到文件系统的结构通常很有用。Microsoft Windows上面的"explorer"程序就是这样的一个例子。但是在有图形界面之前,没有图形化的表示方法的,那时候最好的方式是把目录和文件的结 构显示成一个"图"的样子,而且使用缩排的形式来表示目录的结构。比如: ROOT| dir1| | file1| | file2| | file3| dir2| dir3| | file1file1file2 这个图说明:ROOT目录包括两个文件和三个子目录。第一个子目录包含3个文件,第二个子目录是空的,第三个子目录包含一个文件。 输入 你的任务是写一个程序读取一些测试数据。每组测试数据表示一个计算机的文件结构。每组测试数据以'*'结尾,而所有合理的输入数据以'#'结 尾。一组测试数据包括一些文件和目录的名字(虽然在输入中我们没有给出,但是我们总假设ROOT目录是最外层的目录)。在输入中,以']'表示一个目录的 内容的结束。目录名字的第一个字母是'd',文件名字的第一个字母是'f'。文件名可能有扩展名也可能没有(比如fmyfile.dat和

官方WordCount案例以及自己的实际操作

心不动则不痛 提交于 2020-01-25 08:25:14
官方WordCount案例: 1. 创建在hadoop-2.7.2文件下面创建一个wcinput文件夹 [atguigu@hadoop101 hadoop-2.7.2]$ mkdir wcinput 2. 在wcinput文件下创建一个wc.input文件 [atguigu@hadoop101 hadoop-2.7.2]$ cd wcinput [atguigu@hadoop101 wcinput]$ touch wc.input 3. 编辑wc.input文件 [atguigu@hadoop101 wcinput]$ vi wc.input 在文件中输入如下内容 hadoop yarn hadoop mapreduce atguigu atguigu 保存退出::wq 4. 回到Hadoop目录/opt/module/hadoop-2.7.2 5. 执行程序 [atguigu@hadoop101 hadoop-2.7.2]$ hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount wcinput wcoutput 6. 查看结果 [atguigu@hadoop101 hadoop-2.7.2]$ cat wcoutput/part-r-00000 atguigu 2

Hadoop Eclipse插件编译

こ雲淡風輕ζ 提交于 2020-01-25 04:54:12
Eclipse连接Hadoop集群环境,需要安装插件。Hadoop源码包中有Eclipse插件源代码,需要自己动手编译。 环境:Hadoop 1.2.1 & Eclipse Kepler & Windows 7 & JAVA 7 1、生成插件源码 解压Hadoop安装包,找到src\contrib\eclipse-plugin 2、修改配置 修改src\contrib\eclipse-plugin\build.xml <mkdir dir="${build.dir}/lib"/> <!-- <copy file="${hadoop.root}/build/hadoop-core-${version}.jar" tofile="${build.dir}/lib/hadoop-core.jar" verbose="true"/> <copy file="${hadoop.root}/build/ivy/lib/Hadoop/common/commons-cli-${commons-cli.version}.jar" todir="${build.dir}/lib" verbose="true"/> --> <copy file="${hadoop.root}/hadoop-core-1.2.1.jar" tofile="${build.dir}/lib/hadoop-core.jar"

Linux三剑客之grep命令

早过忘川 提交于 2020-01-25 04:10:14
1、grep简介 grep (缩写来自Globally search a Regular Expression and Print)是一种强大的文本搜索工具,它能使用特定模式匹配(包括正则表达式)搜索文本,并默认输出匹配行。Unix的grep家族包括grep、egrep和fgrep。Windows系统下类似命令FINDSTR。 grep用来基于正则去实现行过滤的工具;它有很多衍生命令: egrep 扩展的grep,即默认使用扩展正则表达式的grep,更高级。 fgrep 专用于文件行过滤的工具。 2、grep的工作原理 grep命令在一个或多个文件中查找某个字符模式,如果这个模式中包含空格,就必须用引号把它括起来。grep命令中,模式可以是一个被引号括起来的字符串,也可以是单个词。位于模式之后的所有单词都被视为文件名。grep将输出发送到屏幕,它不会对输入文件进行任何修改或变化。grep返回的退出状态为0,表示成功。退出状态为1,表示没有找到。如果找不到指定的文件,退出状态为2。 3、grep命令的常用选项 -- color = auto 对匹配到的文本着色显示。 - v 显示不被pattern匹配到的行,反向查找。 - V 或 -- version : 显示版本信息。 - i 忽略字符大小写。 - n 显示匹配的行号 , 在显示符合样式的那一行之前,标示出该行的列数编号。 - o

centos7源码编译安装Subversion 1.9.5

早过忘川 提交于 2020-01-25 03:01:54
svn是Subversion的简称,是一个开放源代码的版本控制系统。 svn有两种运行方式:1、独立服务器(svn://xxx.xxx/xxx) 2、借助apache(http://svn.xxx.xxx/xxx) svn存储版本数据也有两种方式:1、BDB(事务安全型表类型) 2、FSFS(一种不需要数据库存储系统) 因为BDB方式在服务中断时,可能锁住数据,这里我们选择独立服务器和FSFS方式安装svn。 一、下载安装Subversion必要的源码文件 安装svn需要apr,apr-util,zlib,serf,openssl的支持,serf的编译安装又需要scons 所以这里我们用yum来安装zlib和openssl,源码编译apr,apr-util,serf,scons subversion源码包 http://mirrors.cnnic.cn/apache/subversion/subversion-1.9.5.tar.gz apr源码包 http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.5.2.tar.gz apr-util源码包 http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.5.4.tar.gz serf源码包 https://www

性能工具之Taurus使用(入门篇)

拜拜、爱过 提交于 2020-01-25 02:23:50
文章目录 前言 运行现有 JMeter 脚本 使用 YAML 创建 JMeter 脚本 小结 前言 在上篇文章中,我们详细介绍了 Taurus 的常规和 docker 安装,这篇我们一起来看下如何入门使用 Taurus 结合 JMeter做压测。 性能工具之Taurus入门(安装篇) 运行现有 JMeter 脚本 Taurus 能够支持现有 JMeter(或 Grinder 或 Gatling 或 Selenium)测试引擎的能力, 同时也能够支持直接解析原生脚本,如 JMeter JMX文件。其默认执行引擎是 JMeter,因此,如果已经使用 JMeter创建了 JMX 文件,那么使用 Taurus 可以很容易地运行,只需使用 bzt 命令以及 JMX 路径即可。 我在这里简单使用示例脚本: build-web-test-plan.jmx 执行命令: bzt example.jmxbzt build-web-test-plan.jmx -o modules.jmeter.version = 5.2.1 将能够看到包含所有 Taurus 报告的全屏仪表板。该仪表板具有 ASCII 图,可显示有关测试的关键统计数据和各种指标。 测试后摘要报告如下所示: 注意: 这里我使用可以使用 -o 参数从命令行覆盖配置选项,因为默认配置的 JMeter 版本为 5.1 会报 404