![](https://img-blog.csdnimg.cn/20190927151132530.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法模板
文章平均质量分 51
算法模板
MrZhuangzhipeng
这个作者很懒,什么都没留下…
展开
-
Trie树的实现
前缀树的好处是:虽然散列表能够查询单词是否是有效的,但是他不能去识别字符串中是否有任何有效单词的前缀。而前缀树可以很快地做到这一点。前缀树的实现:实际上主要是因为之前没想到要这样子来存储数据,一开始按照网上看得图是这样子的,(图片来自Leetcode https://leetcode-cn.com/problems/implement-trie-prefix-tree/so...原创 2020-05-08 10:07:36 · 227 阅读 · 0 评论 -
二分查找模板
1.查找第一个等于target的元素2.查找最后一个等于target的元素3.查找第一个大于等于target的元素4.查找最后一个小于等于target的元素1.查找第一个等于target的元素 int findFirstTarget(vector<int>& nums,int target){ int l = 0 ; ...原创 2020-04-29 22:54:55 · 171 阅读 · 0 评论 -
排序模板
https://www.zhihu.com/question/51337272/answer/572455307https://mp.weixin.qq.com/s/b1ICJaB5RjUjH_h_cB1qighttps://zhuanlan.zhihu.com/p/68672733https://zhuanlan.zhihu.com/p/57088609借用知乎大佬的图片:htt...原创 2020-04-21 15:40:40 · 150 阅读 · 0 评论 -
归并排序以及快速排序模板
归并排序:归并模板及测试 void Merge(vector<int>& arr, int l, int mid, int r) { int size = r - l + 1; int* helpArr = new int[size]; int p1 = l; int p2 = mid + 1;...原创 2020-04-07 22:17:10 · 162 阅读 · 0 评论 -
c++中的随机数
随机数引擎的输出是不能直接使用的,一般生成的随机数的值范围与我们需要的不符,而正确转换随机数的范围是极其困难的。头文件#include<random>生成均匀分布的整数 default_random_engine e;//生成随机的无符号数 uniform_int_distribution<unsigned> u(0, 9);//...原创 2020-04-07 16:51:57 · 195 阅读 · 1 评论 -
宽度优先搜索练习
• 二叉树上的宽搜 BFS in Binary Tree• 图上的宽搜 BFS in Graph• 拓扑排序 Topological Sorting• 棋盘上的宽搜 BFS若是求最短路径,则很大可能是使用宽度优先搜索,也可能是使用DP若是求最长路径,则很大可能是使用深度优先搜索,也可能是使用DP题目一:二叉树的层次遍历https://leetcode-cn.com/...原创 2020-03-22 19:54:15 · 559 阅读 · 0 评论 -
华为笔试题(1)
主要是练习输入输出: string line; while(getline(cin,line)){} int N; while(cin >> N){}链接:https://www.nowcoder.com/questionTerminal/fe298c55694f4ed39e256170ff2c205f来源:牛客网有这样一道智力题:“某商店规定...原创 2020-03-27 10:09:00 · 274 阅读 · 0 评论 -
Oppo笔试题练习
序列1234567891011121314序列122333444455555序列123344455555(1),(2,2),(3,3,3),(4,4,4,4),……规律:第n组有n个数,值均为n前n组共1+2+...+n=n(n+1)/2个数令n(n+1)/2≤200n(n+1)≤400n为正整数,n≤19200-19×20/2=1019+1=20第200个数是...原创 2020-03-27 13:30:14 · 3167 阅读 · 2 评论 -
百度2016研发工程师在线编程题
https://blog.csdn.net/SharonLu1216/article/details/78082701?utm_source=blogxgwz5c++中保留小数的精度#include <iomanip>double res = 3.1415926;cout << fixed << setprecision(2) << r...原创 2020-03-28 12:49:24 · 237 阅读 · 0 评论 -
单调栈和滑动窗口模板
常见模型:找出每个数左边离它最近的比它大/小的数https://www.acwing.com/blog/content/404/单调栈的运用找左边和右边第一个比它大的元素题目1:找到左边比它小的,或者右边比它大的,有两种写法:for循环从大到小,for循环从小到大。对于找右边的XXX,从N-1~0比较容易对于找左边的XXX,从0~N-1比较容易因为这样就不需要处理当没有...原创 2020-03-29 15:40:42 · 524 阅读 · 0 评论 -
动态规划之第一日
动态规划题目满足下面三个条件之一:求最优值,即最大值,最小值 判断是否可行 dp[i][j]=true/false; 统计方案 dp[i][j]=状态数则极有可能性用到动态规划而如果是要求具体的方案,而不可能使用动态规划。题目1:三角形最小路径和 https://leetcode-cn.com/problems/triangle/1.DFS做法2.分治做...原创 2020-03-19 21:44:11 · 369 阅读 · 0 评论 -
分治算法刷题
1.路径总和I,II,III2.二叉树的最小深度3.和最小的子树4.平均值最大的子树(关于子树问题好像都可以直接用分治来做,该题为模板)5.二叉树的公共祖先I,II,III第一题:路径总和https://leetcode.com/problems/path-sum/功力下降了,以前会的题目竟然得重新写起来debug了好久....忘记了这个测试案例...原创 2020-03-18 18:06:48 · 232 阅读 · 0 评论 -
题目练习:万金油DFS
之前也刷了一些题目,但是效果不是很好,看到题目也不能马上想到是用什么方法做,反思了下应该是做的题目太散了,一天做链表,第二天又做图,这样导致每个结构都不是特别熟悉。所以接下来刷题会按照Tag刷,今天就刷万金油的DFS.应该说DFS能够解决特别多的问题,因为每一种可能都能遍历到,可以用来解决排列,组合,幂集、子集、0-1 背包、n 括号问题、八皇后、迷宫、…当然这些问题有些能通过动态规划...原创 2020-03-17 20:49:06 · 303 阅读 · 0 评论 -
堆模板以及应用
1.堆数据结构堆的模板//STL中优先级队列中的定义https://blog.csdn.net/weixin_36888577/article/details/79937886priority_queue <class T,Sequence = vector<T>, class Compare = less<typename Sequem...原创 2020-04-07 11:41:53 · 161 阅读 · 0 评论