学习笔记:
1.文件默认不能建立为执行文件,需手工赋予执行权限
2. umask 查看默认权限
3. Linux 是一套免费使用和自由传播的类 UNIX 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多CPU的操作系统。
4.Linux能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
5.Linux系统启动流程
6.Linux 系统中是通过 ssh 服务实现的远程登录功能,默认 ssh 服务端口号为 22。
7.绝对路径:
路径的写法,由根目录 / 写起,例如: /usr/share/doc 这个目录。
相对路径 :
路径的写法,不是由 / 写起,例如由 /usr/share/doc 要到 /usr/share/man 底下时,可以写成: cd ../man
8.Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向 系统管理员 申请一个账号,然后以这个账号的身份进入系统。
用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。
9.基本上 vi/ vim 共分为三种模式,分别是 命令模式 (Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。
10. Tomcat 是一个Web容器,JavaEE程序可以在此运行
11.leetcode437. 路径总和 III
给定一个 二叉树 的根节点 root ,和一个整数 targetSum ,求该二叉树里节点值之和等于 targetSum 的 路径 的数目。
路径不需要从根节点开始,也不需要在 叶子 节点结束,但是路径方向必须是向下的(只能从父节点到子节点)
解题思路:设置一个递归方法,传入root,寻找root的值与当前target相同的值,得到一条路径,再对root的左子树与右子树分别进行递归;再将root的左子树与右子树分别传入第一层递归方法,将得到的路径数加起来
/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode() {}
* TreeNode(int val) { this.val = val; }
* TreeNode(int val, TreeNode left, TreeNode right) {
* this.val = val;
* this.left = left;
* this.right = right;
* }
* }
*/class Solution {
public int pathSum(TreeNode root, int targetSum) {
int res = 0;
if(root==null){
return 0;
}
res = findPath(root, targetSum);
res += pathSum(root.left, targetSum);
res += pathSum(root.right, targetSum);
return res;
}
public int findPath(TreeNode node, int targetSum){
int res = 0;
if(node==null){
return 0;
}
if(node.val==targetSum){
res += 1;
}
res += findPath(node.left, targetSum-node.val);
res += findPath(node.right, targetSum-node.val);
return res;
}
}