优先队列(priority_queue)和一般队列(queue)的函数接口一致,不同的是,优先队列每次出列的是整个队列中
最小(或者最大)的元素。
本文简要介绍一种...
本文简要介绍一个 LIBSVM 的JAVA实例,附完整项目源码(大侠 arnaudsj 出品)。 项目结构如下图所示: ...
KMP算法是一种线性时间复杂的字符串匹配算法,它是对BF算法(Brute-Force,最基本的字符串匹配算法的)改进。
对于给的的原始串S和模式串P,需要从字符串S...
单链表的快速排序和数组的快速排序在基本细想上是一致的,以从小到大来排序单链表为例,
都是选择一个支点,然后把小于支点的元素放到左边,把大于支点的...
求数组中第K大的数可以基于快排序思想,步骤如下:
1.随机选择一个支点
2.将比支点大的数,放到数组左边;将比支点小的数放到数组右边;将支点放到中间...
B树 即二叉搜索树:
1.所有非叶子结点至多拥有两个儿子(Left和Right);
2.所有结点存储一个关键字;
3.非叶子结点的左指针指向小于其关键字的子树,右指...
摘要:本文简要介绍了当数据量大到不适合在内存中排序时,利用磁盘进行排序的多路归并算法。
关键字:外排序,磁盘排序,多路归并
下面以一个包含很多...
摘要:本文简要介绍了并查集的基本原理,并且给出了简单易于理解的数组实现。本文给出的实现方法
使用数组而不是通用的树结构,是为了方便对并查集的理解...
摘要:本文介绍了通用并查集的树形实现,通过压缩路径和维持数的平衡,可以保证
查找和合并的平均时间复杂度为O(1)!
关键字:并查集,UnionFind,树形
...
摘要:本文简要介绍了采用贪心策略的最小生成的生成算法——Prim算法。文中首先给出了一个易于理解
的O(N^3)的实现,然后给出了优化后的O(N^2)实现,也就是...
摘要:本文简要介绍了top-k(求一个序列中前K个最大或最小的元素)算法的二分实现方法,并给出了C++源
代码
关键字:top-k,二分,快排序
网上介绍to...
问题描述:给定两个正整数A,B(A和B可能超出计算机中国INT32,INT64的范围,高达几百甚至上千位),
求A和B相乘的积。
解决方案:
用计算机模拟手算的...
摘要:本文简要介绍了拓扑排序算法的原理,并给出了基于邻接矩阵实现的拓扑排序c++源码
关键字:拓扑排序,topological sort,AOV网络
最近在论坛上看...
题目比较简单,但是这里采用的一次遍历方法还是比较通用的。
设:
arr: 数组, size=N
i:记录上一次放置偶数的下一个位置, 初始i=0
j : 当前遍历...
本文简要介绍快排序的非递归实现方式并给出了C语言版本的源代码,非递归实现由于没有函数调用的消耗,相对于递归方式有一定的优势。
在快排序的递归实现中,...