启 算法,问题之解法也 算法好坏的衡量标准:时间和空间,单位是对数、一次、二次、三次等 算法中处理的数据,输入方式都是左闭又开,类型就迭代器, 如:[first, last) STL中提供了很多算法,我们只研究感兴趣的几种 算法,问题之解法也 算法好坏的衡量标准:时间和空间,单位是对数、一次、二次、 ...
分类:
编程语言 时间:
2019-09-23 19:49:28
阅读次数:
148
题意:给定一个长度为N的排列,你只能对其中长度为K的连续子序列进行一次从小到大的排序,问:排序之后能形成多少不同的排列? 数据范围: 1 <= n, k <= 200,000, k <= n. 分割线 分析此题,我们发现,长度为K的连续子序列在原排列中只有 N-K+1个,也就是说只会有N-K+1个排 ...
分类:
其他好文 时间:
2019-09-22 14:56:32
阅读次数:
66
稍微花了一点点时间看了一下老师推荐的博客:http://feihu.me/blog/2014/sgi-std-sort/,看完后无不赞叹STL追求效率之极致,STL的sort排序算法综合了三种排序快排,堆排和插入排序,被称为Introspective Sort(内省式排序),在算法内部根据自身不同的 ...
分类:
编程语言 时间:
2019-09-22 01:31:27
阅读次数:
92
场景 Effective Java 中文版Java核心技术 卷Ⅰ 基础知识(第8版)Java语言程序设计-进阶篇(原书第8版)疯狂Java讲义Java从入门到精通 第三版Java编程思想第4版重构-改善既有代码的设计Head First Java 中文高清版Java从入门到精通Java核心技术 卷Ⅱ ...
分类:
编程语言 时间:
2019-09-22 01:02:45
阅读次数:
115
题目来自leetcode 239题滑动窗口最大值 如果使用暴力做法的话,每一次的窗口中都遍历找最大,这样的算法时间复杂度是O(n2),显然不符合要求! 这题应该使用单调队列来解决,时间复杂度为O(n)。 单调队列就是队列中的数据要么是单调递增,要么是单调递减的。 这里我们借助STL中的双端队列可以很 ...
分类:
其他好文 时间:
2019-09-21 22:54:39
阅读次数:
56
colorscheme evening set fillchars=vert:\ ,stl:\ ,stlnc:\ set nu set tabstop=4 set shiftwidth=4 set softtabstop=4 set autochdir set mouse=a set autoind... ...
分类:
系统相关 时间:
2019-09-16 16:32:43
阅读次数:
109
参考自:https://blog.csdn.net/XY20130630/article/details/50635756 题意:一个序列被称为是不无聊的,仅当它的每个连续子序列存在一个独一无二的数字,即每个子序列里至少存在一个数字只出现一次。给定一个整数序列,请你判断它是不是不无聊的。 分析:预处 ...
分类:
其他好文 时间:
2019-09-16 09:51:45
阅读次数:
105
map与set底层都是调用的RBTree 首先看RBTree RBTree 红黑树的特性: 1.根节点为黑色 2.新增节点一定是红色 3.节点只有红色或黑色两种颜色 4.两个节点颜色不能同为红 5.任意一条路径上的黑色节点个数相同 红黑树的节点设计: 1.表示节点颜色的变量color 2.链接左子树 ...
分类:
其他好文 时间:
2019-09-16 09:33:55
阅读次数:
115
策略模式采用组合的形式,封装不同的算法族,让算法之间可以相互替换,并让算法的变化独立于使用算法的客户。 ...
分类:
其他好文 时间:
2019-09-15 16:48:36
阅读次数:
89
Dijkstra’s Shortest Path Algorithm 实现详见:https://www.geeksforgeeks.org/dijkstras-shortest-path-algorithm-using-priority_queue-stl/ 需要注意的是,priority_queu ...
分类:
其他好文 时间:
2019-09-14 11:20:38
阅读次数:
124