temp

find的基本查询命令《二》

吃可爱长大的小学妹 提交于 2019-12-05 13:58:39
Linux find命令详解 由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下。即使系统中含有网络文件系统( NFS),find命令在该文件系统中同样有效,只你具有相应的权限。 在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统可能会花费很长的时间(这里是指30G字节以上的文件系统)。 一、find 命令格式 1、find命令的一般形式为; find pathname -options [-print -exec -ok ...] 2、find命令的参数; pathname: find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。 -print: find命令将匹配的文件输出到标准输出。 -exec: find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } \;,注意{ }和\;之间的空格。 -ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。 3、find命令选项 -name 按照文件名查找文件。 -perm 按照文件权限来查找文件。 -prune 使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使用

LeetCode两数相加 C++版

我与影子孤独终老i 提交于 2019-12-05 12:35:27
LeetCode两数相加 题目描述: 给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。 您可以假设除了数字 0 之外,这两个数都不会以 0 开头。 下面使用C++进行编写程序,后面进行分析 C++代码 * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) { ListNode* result=NULL; int sum = ((l1!=NULL)?l1->val:0)+((l2!=NULL)?l2->val:0); int temp=sum/10; result=new ListNode(sum%10); ListNode *l=result; l1=l1!=NULL?l1->next:NULL; l2=l2!=NULL?l2->next:NULL; while

leetcode每日刷题计划--day59

为君一笑 提交于 2019-12-05 12:31:53
Num 5 最长回文子串 Manacher是专门用于解决这个问题的算法 说明:   1、temp:在所有字符前面插入了#的新字符串,注意最头和最尾巴也插入,这样所有原来字符都在奇数位置   2、maxcenter:已知的最大的回文串中心位置   3、maxend:目前最大回文串覆盖的尾部索引号   4、在判断i的时候,如果他被包含在某个回文串里面,那么他与前面的某个字符附近的东西是对应的,相应的,如果那个字符串在对应部分有回文,那么他的这部分有回文   5、注意限制,如果超出了镜像的部分,是不是不确定,所以下限是min(边界-相同,镜像点的半径)。 几个在leetcode需要注意的地方(字符串堆栈溢出):   1、在插入#产生新的字符串的时候,使用push_back可以避免堆栈溢出(好像是如果给空可能附近有别的干扰,默认分配不够)   2、在后面判断的时候是用temp   3、最后返回的时候用substr返回,s.substr(start,len),第二个是截取长度 class Solution { public: string longestPalindrome(string s) { if(s=="") return ""; string temp="#"; for(int i=0;i<s.length();i++) { //temp[2*i+1]=s[i]; //temp[2

网络流:最大流之SAP算法

a 夏天 提交于 2019-12-05 09:32:27
网络流主要解决三种问题:最大流、最小流和费用流。 最大流算法主要有三种:EK算法、Dinic算法、SAP算法。 本篇博客是关于SAP算法的。最坏的情况下,SAP算法将达到复杂度 O ( V E 2 )。 1 #include <iostream> 2 #include <cstdio> 3 #include <algorithm> 4 #include <queue> 5 #include <cstring> 6 7 using namespace std; 8 const int INF = 0x3f3f3f3f; 9 const int maxn = 200 + 10; 10 const int maxm = 200 + 10; 11 12 int n,m; 13 int head[maxn];//链式前向星 14 int tot = 0; 15 16 struct edge 17 { 18 int to; 19 int c; 20 int next; 21 edge(int x = 0, int y = 0, int z = 0) : to(x), c(y), next(z) {} 22 }es[maxm*2];//记录边 注意是2倍 23 24 void add_edge(int u, int v, int c) 25 { 26 es[tot] = edge(v,c

向上取整的三种方法

我的梦境 提交于 2019-12-05 09:06:04
方法一:检查余数 以后还是养成用这种方法的习惯吧,因为他一般不会出错 if (temp%k == 0) result = temp / k ; else result = (temp / k)+1; 方法二:增加一点小处理(推荐,但可能溢出) result = (temp +k-1)/ k; 这个可以自己举个例子试试就明白了 方法三:使用cmath头文件中ceil函数(不推荐,可能会出错) result = (int)ceil(temp / k); 最大的问题: Math.ceil的返回类型是double 精度丢失可能仅仅在很极端的场景下出现,可一旦出现就是非常难以排查的隐式bug。 举个例子: 假设某两个数的ceil计算结果原本是2.0,但由于精度问题,ceil结果其实是1.9999999999999999999999999 在结果转为int型数据时,发生了精度丢失,计算结果由2.0转换为1 在任何可能出现与浮点型数据进行比较,或浮点型与整型的类型转换都必须非常注意。 参考链接:https://www.jianshu.com/p/29ce2fb998b4 来源: https://www.cnblogs.com/zlszls3113373723/p/11918001.html

leetcode279. 完全平方数

廉价感情. 提交于 2019-12-05 07:44:21
给定正整数 n ,找到若干个完全平方数(比如 1, 4, 9, 16, ... )使得它们的和等于 n 。你需要让组成和的完全平方数的个数最少。 示例 1: 输入: n = 12 输出: 3 解释: 12 = 4 + 4 + 4. 示例 2: 输入: n = 13 输出: 2 解释: 13 = 4 + 9. 路径最短的问题 使用BFS最优 BFS其实是很简单的算法,只需要掌握以下几个套路 1.BFS算法组成的三要素:队列、入队及出队的结点、已经访问的标记集合   队列:先入先出的容器   入队、出队的结点   已访问标记集合:避免队列插入重复的值 2.BFS算法组成的格式   (1)初始化元素 queue<int>qq; vector<int>visited(n+1);  (2)操作队列---弹出队首节点 int num=qq.front(); qq.pop();····(3)操作弹出的节点 —— 根据业务生成子节点(一个或多个): for(int i=1;i<=static_cast<int>(sqrt(num));i++) int temp=num-i*i;   (4)判断这些节点 —— 符合业务条件,则return,不符合业务条件,且不在已访问集合,则追加到队尾,并加入已访问集合:      if(temp==0) return step; else if(!visited

HDU 1401 Solitaire 双向DFS

孤人 提交于 2019-12-05 07:04:08
HDU 1401 Solitaire 双向DFS 题意 给定一个 \(8*8\) 的棋盘,棋盘上有4个棋子。每一步操作可以把任意一个棋子移动到它周围四个方向上的空格子上,或者可以跳过它四个方向上的棋子(就像跳棋那样)。给定初始状态和末状态,问能否在8步之内,从初始状态变换到末状态。 解题思路 这是是看的学长写的题解,很好,也算自己简单知道了双向BFS是什么情况了。 给定了初始状态和末状态,又有最多只能走8步的限制,所以我们很容易就可以想到进行双向BFS。但是一定要注意对冗余状态的剪枝。我们可以对这四枚棋子按照某种顺序进行排序,这样就可以去掉很多等效局面,大大降低时间复杂度。 我们可以通过Hash,把一个局面Hash成一个整数 \(hashVal\) ,然后用 \(vis[hashVal]\) 来记录达到这个局面一共走了多少步。当搜索结果相交的时候,判断一下当前的步数是否小于等于8即可,具体见代码。 这里还要注意,因为是双向BFS,所以每次循环这两个BFS都会走一步,因而每个BFS最多只能走4步 代码实现 #include <map> #include <queue> #include <cstdio> #include <algorithm> using namespace std; typedef long long ll; const ll BASE = 100; const

iOS代码混淆

自古美人都是妖i 提交于 2019-12-05 05:53:21
代码混淆都是一个很重要的安全技术手段,如何进行全局的自动化代码混淆,以下开源项目详细介绍了如何实现这个目标。 如果你的工程支持cocoapod,你可以直接添加! pod "STCObfuscator" ( 注:请用最新版本1.3.0,最好更新下pod repo update master ) 把下面的代码加入到Appdelegate didFinishLaunchingWithOptions方法里, #import "STCObfuscator.h" #if (DEBUG == 1) [[STCObfuscator obfuscatorManager] confuseWithRootPath:[NSString stringWithFormat:@"%s", STRING(ROOT_PATH)] resultFilePath:[NSString stringWithFormat:@"%@/STCDefination.h", [NSString stringWithFormat:@"%s", STRING(ROOT_PATH)]] linkmapPath:[NSString stringWithFormat:@"%s", STRING(LINKMAP_FILE)]]; #endif 然后完成下面步骤的设置 步骤一: 在 Build Settings->Preprocessor

leetcode——437. 路径总和 III

假装没事ソ 提交于 2019-12-05 04:54:10
class Solution: def pathSum(self, root: TreeNode, sum: int) -> int: if not root: return 0 def dfs(node,sums): left=right=0 temp=[num+node.val for num in sums] + [node.val] if node.left: left=dfs(node.left,temp) if node.right: right=dfs(node.right,temp) return temp.count(sum)+left+right return dfs(root,[]) 执行用时 :228 ms, 在所有 python3 提交中击败了86.15%的用户 内存消耗 :34.8 MB, 在所有 python3 提交中击败了7.82%的用户 这个做法只是能看懂,自己却做不出来。。。 ——2019.11.21 来源: https://www.cnblogs.com/taoyuxin/p/11907889.html

Nginx安装手册

你。 提交于 2019-12-05 04:17:48
Nginx安装手册 Nginx安装手册 1 nginx安装环境 nginx是C语言开发,建议在linux上运行,本教程使用Centos6.5作为安装环境。 gcc 安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc:yum install gcc-c++ PCRE PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库。 yum install -y pcre pcre-devel 注:pcre-devel是使用pcre开发的一个二次开发库。nginx也需要此库。 zlib zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在linux上安装zlib库。 yum install -y zlib zlib-devel openssl OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。 nginx不仅支持http协议,还支持https(即在ssl协议上传输http),所以需要在linux安装openssl库。