摘要: 算法——分治法 1 算法思想 将一个规模为 n 的问题划分为 k 个规模较小的子问题,这些子问题独立且与原问题相同。然后通过递归解决这些子问题,将子问题的解合并得到原问题的解。 \[ T(n)=\begin{cases}O(1) & n=1 \\ kT(\lfloor n/m \rfloor)+f( 阅读全文
posted @ 2021-12-05 17:18 Astray_M 阅读(97) 评论(0) 推荐(0)
摘要: 文件的权限除了rwx即读、写、执行的权限还有其他特殊的权限 SUID 即Set UID,当s的标志出现在文件拥有者的x位置上时,就拥有SUID的权限,具体来说功能如下 SUID仅对二进制程序有效 执行者对该程序需要有x的权限 本权限仅在该程序执行时有效 执行者会拥有程序拥有者的权限 我们可以由如下的 阅读全文
posted @ 2021-10-25 00:36 Astray_M 阅读(126) 评论(0) 推荐(0)
摘要: 1.Linux的文件系统特性 linux的正统文件系统是ext2,对于linux 的文件通常除了实际内容外,通常含有非常多的属性,例如文件权限(rwx)和文件属性(拥有者、用户组、时间参数等)。文件系统通常会将这两部分存放到不同的区块,权限和属性放到inode(unix系统中的一种数据结构)中,而实 阅读全文
posted @ 2021-10-24 15:42 Astray_M 阅读(465) 评论(0) 推荐(0)
摘要: ##对象的拷贝 C++新标准之前对象的拷贝控制由拷贝构造函数,重载的拷贝赋值运算符,析构函数三个函数决定。 新标准之后新增两个函数:移动构造函数,移动赋值运算符 移动构造函数和移动赋值运算符 为什么会有移动构造函数和移动赋值运算符?我们需要拷贝的场景有两种,第一种就是被拷贝的对象还要时候,第二种就是 阅读全文
posted @ 2021-10-23 15:18 Astray_M 阅读(372) 评论(0) 推荐(0)
摘要: 算法—单调栈小结 前言 在leetcode刷题的时候遇到了503. 下一个更大元素 II。一开始是使用暴力解法,会因为$O(n^2)$的时间复杂度而导致超时。看了题解之后了解了单调栈相关的知识,运用单调栈的方法可以在$O(n)$时间内解决这个问题。 单调栈 单调栈是在栈的FILO(先进后出)的特性在 阅读全文
posted @ 2021-10-13 19:22 Astray_M 阅读(76) 评论(0) 推荐(0)
摘要: const关键字 const修饰的对象一旦创建后其值就不能再改变,所以const修饰的对象必须初始化 用法: 定义常量对象,被const修饰的对象不能被更改 const int i = 42; //正确,编译时初始化 const int j = get_size(); //正确,编译时初始化 con 阅读全文
posted @ 2021-09-27 13:05 Astray_M 阅读(3127) 评论(0) 推荐(1)
摘要: 字符串排序 1.低位优先的字符串排序(LSD) 低位优先的字符串排序是从右到左依次检查键中的字符,这种方法适用于键的长度都相同的字符串。 假设字符串的长度都为w,那么就从右向左按基数排序的方法排序w遍。 代码实现: //低位优先排序 template <typename T> void LSD(ve 阅读全文
posted @ 2021-09-24 14:30 Astray_M 阅读(643) 评论(0) 推荐(0)
摘要: 最短路径 最短路径是在加权有向图中,找到从一个顶点到达另一个顶点的成本最小的路径 1.加权有向图的数据结构 加权有向边 代码实现: //加权有向边 class DirectedEdge { private: int vertax_from; //边的起点 int vertax_to; //边的终点 阅读全文
posted @ 2021-09-23 19:52 Astray_M 阅读(253) 评论(0) 推荐(0)
摘要: 最小生成树 1.最小生成树(minimum spanning tree) 定义:给定一幅加权无向图,找到一棵权值最小的生成树 生成树:图的生成树是一棵含有其所有结点的无环连通子图 橙色部分即为该图的最小生成树 2.加权无向图的数据结构 加权边 代码实现 class Edge { private: i 阅读全文
posted @ 2021-09-22 21:18 Astray_M 阅读(115) 评论(0) 推荐(0)
摘要: 要使用priority_queue需要先包含头文件#include<queue>,相比queue,优先队列可以自定义数据的优先级,让优先级高的排在队列前面。 优先队列的基本操作: empty:查看优先队列是否为空 size:返回优先队列的长度 top:查看堆顶的元素 push:插入一个元素 empl 阅读全文
posted @ 2021-09-20 00:28 Astray_M 阅读(492) 评论(0) 推荐(0)