Readable

[LeetCode] 94. Binary Tree Inorder Traversal 二叉树的中序遍历

南笙酒味 提交于 2020-07-27 21:57:26
Given a binary tree, return the inorder traversal of its nodes' values. Example: Input: [1,null,2,3] 1 \ 2 / 3 Output: [1,3,2] Follow up: Recursive solution is trivial, could you do it iteratively? 二叉树的中序遍历顺序为左-根-右,可以有递归和非递归来解,其中非递归解法又分为两种,一种是使用栈来接,另一种不需要使用栈。我们先来看递归方法,十分直接,对左子结点调用递归函数,根节点访问值,右子节点再调用递归函数,代码如下: 解法一: class Solution { public : vector < int > inorderTraversal(TreeNode * root) { vector < int > res; inorder(root, res); return res; } void inorder(TreeNode *root, vector< int > & res) { if (!root) return ; if (root->left) inorder(root-> left, res); res.push_back(root -> val); if (root-

Linux 常用命令不间断更新

狂风中的少年 提交于 2020-05-08 02:09:40
前提:Linux 命令 大小写敏感 1、 mkdir   make directory(ies)  若指定目录不存在则创建目录   -p, --parents no error if existing, make parent directories as needed 2、 ls   list  列出有关文件的信息(默认为当前目录)    -a, --all do not ignore entries starting with .   -d, --directory list directory entries instead of contents, and do not dereference symbolic links   -F, --classify append indicator (one of */=>@|) to entries     --full-time like -l --time-style=full-iso   -h, --human-readable with -l, print sizes in human readable format (e.g., 1K 234M 2G)   -i, --inode print the index number of each file   -l use a long listing format   

Python小白学习之路(十九)—【文件操作步骤】【文件操作模式】

可紊 提交于 2020-05-05 12:59:33
一、文件操作步骤 step1:打开文件,得到文件句柄并赋值给一个变量 step2:通过句柄对文件进行操作 step3:关闭文件 举例: a = open( ' hello world ' , ' r ' , encoding = ' utf-8 ' ) # 打开 ‘hello world’ 文件,得到文件句柄并赋值给一个变量 a data = a.read() # 通过句柄对文件进行读操作 a.close() # 关闭文件 注意事项一: 关于 a.close() 关闭文件 打开一个文件包含两部分资源:操作系统级打开的文件+应用程序的变量。 在操作完毕一个文件时,必须把与该文件的这两部分资源一个不落地回收,回收方法为: 1、f.close() #回收操作系统级打开的文件 2、del f #回收应用程序级的变量 其中del f一定要发生在f.close()之后,否则就会导致操作系统打开的文件还没有关闭,白白占用资源。 而python自动的垃圾回收机制决定了我们无需考虑del f。 这就要求我们,在操作完毕文件后,一定要记住f.close() 简单的来说,每 open() 一个文件,就要求我们必须 close() 用关键字 with ,可以使用 close() with open( ' hello world ' , ' r ' , encoding = ' utf-8 ' ) as a

linux——文件打包与解压缩

…衆ロ難τιáo~ 提交于 2020-05-01 07:14:42
在讲 Linux 上的压缩工具之前,有必要先了解一下常见常用的压缩包文件格式。在 Windows 上最常见的不外乎这三种 *.zip , *.rar , *.7z 后缀的压缩文件。而在 Linux 上面常见的格式除了以上三种外,还有 *.gz , *.xz , *.bz2 , *.tar , *.tar.gz , *.tar.xz , *.tar.bz2 ,简单介绍如下: 文件后缀名 说明 *.zip zip 程序打包压缩的文件 *.rar rar 程序压缩的文件 *.7z 7zip 程序压缩的文件 *.tar tar 程序打包,未压缩的文件 *.gz gzip 程序(GNU zip)压缩的文件 *.xz xz 程序压缩的文件 *.bz2 bzip2 程序压缩的文件 *.tar.gz tar 打包,gzip 程序压缩的文件 *.tar.xz tar 打包,xz 程序压缩的文件 *tar.bz2 tar 打包,bzip2 程序压缩的文件 *.tar.7z tar 打包,7z 程序压缩的文件 讲了这么多种压缩文件,这么多个命令,不过我们一般只需要掌握几个命令即可,包括 zip , rar , tar 。下面会依次介绍这几个命令及对应的解压命令。 3.1 zip 压缩打包程序 使用 zip 打包文件夹: $ cd /home/shiyanlou $ zip -r -q -o

CentOS下查看文件和文件夹大小

空扰寡人 提交于 2020-04-30 11:40:23
原文: CentOS下查看文件和文件夹大小 当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择。  df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。 当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择。   df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。   du可以查看文件及文件夹的大小。   两者配合使用,非常有效。比如用df查看哪个一级目录过大,然后用df查看文件夹或文件的大小,如此便可迅速确定症结。   下面分别简要介绍   df命令可以显示目前所有文件系统的可用空间及使用情形,请看下列这个例子:   以下是代码片段:   [yayug@yayu ~]$ df -h   Filesystem Size Used Avail Use% Mounted on   /dev/sda1 3.9G 300M 3.4G 8% /   /dev/sda7 100G 188M 95G 1% /data0   /dev/sdb1 133G 80G 47G 64% /data1   /dev/sda6 7.8G 218M 7.2G 3% /var   /dev/sda5 7.8G 166M 7.2G 3% /tmp   /dev/sda3 9.7G 2.5G 6.8G 27%

php面试专题---7、文件及目录处理考点

我们两清 提交于 2020-04-27 22:33:59
php面试专题---7、文件及目录处理考点 一、总结 一句话总结: 用脑子:基本文件操作和目录操作了解一波,不必强求 1、不断在文件hello.txt头部写入一行“Hello World”字符串,要求代码完整? |||-begin <? php // 打开文件 // // 将文件的内容读取出来,在开头加入Hello World // // 将拼接好的字符串写回到文件当中 // // Hello 7891234567890 // $file = './hello.txt' ; $handle = fopen ( $file , 'r' ); $content = fread ( $handle , filesize ( $file )); $content = 'Hello World'. $content ; fclose ( $handle ); $handle = fopen ( $file , 'w' ); fwrite ( $handle , $content ); fclose ( $handle ); |||-end 不能使用把文件指针移到开头的方式,因为会覆盖 2、php访问远程文件? 开启allow_url_fopen,HTTP协议连接只能使用只读,FTP协议可以使用只读或者只写 3、php目录操作函数? 名称相关:basename()、dirname()

Linux文件服务器Vsftpd安装

蓝咒 提交于 2020-04-27 10:20:39
Linux文件服务器Vsftpd安装 Vsftpd服务器安装 1- 在shell命令执行命令 yum install vsftpd -y 2- Vsftpd安装后的配置文件路径、启动Vsftpd服务、查看进程是否启动 rpm - ql vsftpd | more systemctl restart vsftpd.service ps - ef | grep vsftpd 3- 默认配置不变 4- 没试访问ftp://10.206.35.197 5- 服务器被动模式设置 pasv_enable =yes pasv_min_port=60000 pasv_max_port=60100 6- 匿名用户配置 /etc/vsftpd/vsftpd.conf 进入配置文件 anonymous_enable=NO 禁用匿名访问 systemctl restart vspftd.service 重启服务 anon_upload_enable=YES 允许匿名用户上传文件 anon_mkdir_write_enable=YES 允许匿名用户创建目录 anon_other_write_enable=YES 允许匿名用户其他人写入权限 anonymous_enable=YES local-enable=YES local_umask=022 dirmessage_enable=YES xferlog

Linux 查看磁盘或文件夹及文件大小

和自甴很熟 提交于 2020-04-27 06:31:49
当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择。 df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。 du可以查看文件及文件夹的大小。 两者配合使用,非常有效。比如用df查看哪个一级目录过大,然后用df查看文件夹或文件的大小,如此便可迅速确定症结。 一、 df命令    可以显示目前所有文件系统的可用空间及使用情形  -a:显示所有文件系统的磁盘使用情况,包括0块(block)的文件系统,如/proc文件系统。 -k:以k字节为单位显示。 -i:显示i节点信息,而不是磁盘块。 -t:显示各指定类型的文件系统的磁盘空间使用情况。 -x:列出不是某一指定类型文件系统的磁盘空间使用情况(与t选项相反)。 -T:显示文件系统类型。 二、 du命令 du的英文原义为“disk usage”,含义为显示磁盘空间的使用情况 du [-abcDhHklmsSx] [-L <符号连接>][-X <文件>][--block-size][--exclude=<目录或文件>] [--max-depth=<目录层数>][--help][--version][目录或文件] -a或-all 为每个指定文件显示磁盘使用情况,或者为目录中每个文件显示各自磁盘使用情况。 -b或-bytes 显示目录或文件大小时,以byte为单位。 -c或–total

PHP 文件的相关操作

一世执手 提交于 2020-04-26 13:30:09
文件的打开和关闭 主要是两个函数,fopen和fclose。 fopen ( string $filename , string $mode [, bool $use_include_path = FALSE [, resource $context ]] ) : resource 返回的是资源类型的数据 mode 打开模式:指的是文件打开是以写入、读取、执行等等方式 r:(只读模式)以只读方式打开,文件指针指向文件的开头部分 r+:(读写模式)以读写方式打开,文件指针指向文件的开头 w:(只写模式)以写方式打开,指针指向文件头部,如果文件不存在,会创建一个新文件,如果文件存在,文件内容会被清空 w+:(写读模式),指针指向文件头部,如果文件不存在,会创建一个新文件,如果文件存在,文件内容会被清空,可以读取 a:以追加方式打开,指针指向文件末尾(只写),如果文件不存在,会创建一个新文件 a+:以追加方式打开,如果文件存在,指针指向文件末尾,(读写)如果文件不存在,会创建一个新文件 文件的读取 可以读取单个字符、一行、整个文件、读任意长度的数据。 1、读取整个文件: 不需要对文件打开与关闭 readfile() readfile ( string $filename [, bool $use_include_path = FALSE [, resource $context ]] )

TeaDSL:支持任意 OpenAPI 网关的多语言 SDK 方案

别说谁变了你拦得住时间么 提交于 2020-04-23 15:04:42
正在上传… 重新上传 取消 导读 在以云计算为主角的开发者视界中,OpenAPI 是绝对的主角。要发短信,用 OpenAPI;要管理资源,用 OpenAPI;要管理权限,用 OpenAPI。如果一个 OpenAPI 解决不了你的问题,那就再来一个。在今天,开放平台及 OpenAPI 随处可见,它是系统与系统之间集成的重要桥梁。但 OpenAPI 用起来是否真的舒服,这要打一个大大的问号。本文将介绍 OpenAPI 领域下的难题和一些解决方案。 背景 阿里云有位工程师叫朴灵,热爱开源,是活跃在 Github 上的国内技术大牛之一。在阿里工作 6 年之际,朴灵产生了离职的想法,打算去一家创业公司再战高峰。走之前,朴灵做了一些研究工作,他发现阿里云在功能和产品上可以说是一流的云计算厂商,是创业公司的首选,但由于过去的业务中写过大量的 Node.js SDK,对开发者体验有着自己的体感,他觉得在开发者体验关怀上,阿里云做得还不够好。来自一个热血工程师最朴素的想法,自己何不先留下来,去把这件事情做好,于是,朴灵加入了阿里云开放平台负责 SDK 业务,期间,他和团队研发了专利 TeaDSL,下面朴灵将分享 TeaDSL 如何解决多语言 SDK 的问题。 使用 OpenAPI 的痛苦 在过去,我们经常说的 OpenAPI,通常的做法是,开发好服务端的接口,然后在文档里简单写几个参数描述