摘要: 拓扑排序 可以用来检查有没有拓扑序 以及有没有环存在,环中的元素有哪些,以及题目出现又依赖关系 以及图的问题中出现了要从某个特定度的节点开始往里面剥的情况 ,就考虑top操作 关于模板的使用问题: 进过队列中的元素是可以被拓扑排序删去的节点(有拓扑序的元素) ,也是不属于环中节点的节点,进过队列的元 阅读全文
posted @ 2020-12-16 14:36 驿站Eventually 阅读(90) 评论(0) 推荐(0) 编辑
摘要: 结构体的4种初始化方式: 现有结构体: struct Person{ char * name; int age; double heigth; } 1.定义的同时初始化 struct Person p1 = {"zhangsan",20,170}; 2.先定义再逐个初始化 struct Person 阅读全文
posted @ 2020-11-01 18:38 驿站Eventually 阅读(383) 评论(0) 推荐(0) 编辑
摘要: Trie树 Trie树可以支持快速存储和查找某个字符串在字典中是否出现过以及出现的次数 模板: #include <iostream> using namespace std; const int N = 100010; char str[N]; int n ; int son[N][26],cnt 阅读全文
posted @ 2020-11-01 17:49 驿站Eventually 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 1 ~ N 中与 N 互质的数(互质是公约数只有1的两个整数,叫做互质)的个数被称为欧拉函数,记为ϕ(N)。 若在算数基本定理中,\(N=p_1^{\alpha_1}p_2^{\alpha_2}\cdots{p_m^{\alpha_m}}\),则有*式: \[ ϕ(N) = N\times\frac 阅读全文
posted @ 2020-09-17 22:03 驿站Eventually 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 单调栈,单调队列 单调栈 单调栈一般应用场景非常少,只有在一个数组中,找到每个元素左边离他最近的而且比他大或者比他小的元素 比如一个数组 3 4 2 7 5 输出每个数左边第一个比它小的数,如果不存在则输出-1 则输出为 -1 3 -1 2 2 这种情况就可以使用单调栈算法,其实完全可以换句话说,其 阅读全文
posted @ 2020-09-10 21:22 驿站Eventually 阅读(240) 评论(0) 推荐(1) 编辑
摘要: 链表,栈和队列 在工程开发以及leetcode中,我们经常看到的实现链表的数据结构一般是结构体 或者类 class Node { int data; Node next; } 但是在算法题中,这种做法并不可取,因为算法题喜欢把数据范围设置到极限,而且动态链表需要用到new这个关键字,速度会非常的慢 阅读全文
posted @ 2020-09-10 00:27 驿站Eventually 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 先看一个文档中的文字 A segmentation fault (often shortened to SIGSEGV) is a particular error condition that can occur during the operation of computer software. 阅读全文
posted @ 2020-09-09 00:52 驿站Eventually 阅读(6017) 评论(0) 推荐(1) 编辑
摘要: c语言中的c风格字符串常有以下两种存储方式,做一个总结,希望以后不需要再出现模棱两可。 char数组 如果是char str[5]= {'a','b','c','d','e'},这存的就是一个字符数组,而不是一个字符串 如果是char str[6]= {'a','b','c','d','e','\0 阅读全文
posted @ 2020-09-06 15:02 驿站Eventually 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 算法题中有一种题型叫做模拟过程,这种算法题在面试中出现的频率非常之高,因为比较简单,代码量一般而言并不算长。因其并没有一套比较固定的框架,也能考验候选人的编程思维。当遇到一道算法题,发现其并不具备其他经典算法的特征时,可以尝试模拟过程的方向进行求解 方法 一般这种题目分为以下几个步骤进行求解:为什么 阅读全文
posted @ 2020-09-06 00:13 驿站Eventually 阅读(449) 评论(0) 推荐(0) 编辑
摘要: 首先,从程序到可执行程序要经过如下几个步骤: 预处理 编译 汇编 链接 其中链接又分为如下几部: 确定符号引用关系(符号解析) 合并相关 .o (可重定位)文件(重定位) 确定每个符号的地址(重定位) 在指令中填入新的地址(重定位) 在汇编结束之后,就已经生成了二进制的可执行文件。这次我们主要介绍符 阅读全文
posted @ 2020-09-02 19:30 驿站Eventually 阅读(872) 评论(0) 推荐(0) 编辑