本题就是给出很多对字符串,然后问一个字符串在另外一个字符串出现的次数。
就是所谓的Strstr函数啦。
Leetcode有这道几乎一模一样的题目。
使用KMP算法加速,算法高手必会的算法了。
另外看见讨论说什么使用KMP还超时,最大可能是没有真正理解next table的含义,写了错误的代码,故此虽然自己运行结果正确,但是却没有真正发挥next table的作用,使得算法退化为暴力法了,所...
分类:
其他好文 时间:
2014-07-13 18:41:48
阅读次数:
229
枚举两个数字进行运算,将运算结果加入数组末尾后继续枚举
当数组中有7个数字之后表示运算完成
//#pragma comment(linker, "/STACK:102400000,102400000")
//HEAD
#include
#include
#include
#include
#include
#include
#include
#include
#inc...
分类:
其他好文 时间:
2014-07-09 12:29:00
阅读次数:
168
#include
#include
using namespace std;
int main(int agrc, char *agrv[])
{
int iInPut = 0;
while (cin >> iInPut)
{
string sBinary;//转换后的二进制存储为字符串,调用了默认构造函数初试化为空串
int temp = abs(iInPut);
if (t...
分类:
其他好文 时间:
2014-06-25 07:42:13
阅读次数:
280
快速排序作为应用比较广泛,而且时间复杂度比较优越的排序算法备受大家的喜爱。最近有点悠闲,就又把这个快速算法研究了一遍,目前掌握了两种排序算法的思路,为了以免忘记,故详细的记录下来,也供大家学习借鉴,不足之处望请指教。快速排序的基本原理:假设一个待排序的数组如上图所示,排序的目的就是将其从小到大排.....
分类:
其他好文 时间:
2014-06-22 23:23:54
阅读次数:
273
Description速算24点相信绝大多数人都玩过。就是随机给你四张牌,包括 A(1),2,3,4,5,6,7,8,9,10,J(11),Q(12),K(13)。要求只用'+','-','*','/'运算符以及括号改变运算 顺序,使得最终运算结果为24(每张牌必须且仅能用一次)。游戏很简单,但遇到...
分类:
其他好文 时间:
2014-06-19 07:22:20
阅读次数:
262
WIN7以上的系统可以直接运行,XP的系统要按装.NET 2.0 程序下载
http://files.cnblogs.com/xe2011/%E4%B8%80%E7%A7%92%E9%92%9F%E5%BF%83%E7%AE%97.rar更新历史
POJ 2282 The Counting Problem,组合数学
ACM
题目地址:POJ 2282
题意:
给出俩数n,m,求从n~m中0~9分别出现的次数。
分析:
组合数学。
只要能快速算出0~n中各个数的出现次数就能解决问题了。
要把数拆开来看,比如3456=3000+400+50+6。
然后就只要考虑后面都是0的数就行了。
0~...
分类:
其他好文 时间:
2014-06-07 15:38:04
阅读次数:
195
史丰收速算法的革命性贡献是:从高位算起,预测进位。不需要九九表,彻底颠覆了传统手算!速算的核心基础是:1位数乘以多位数的乘法。其中,乘以7是最复杂的,就以它为例。因为,1/7
是个循环小数:0.142857...,如果多位数超过 142857...,就要进1同理,2/7, 3/7, ... 6/7 ...
分类:
其他好文 时间:
2014-05-25 03:08:26
阅读次数:
270
内存数据库,顾名思义就是将数据放在内存中直接操作的数据库。相对于磁盘,内存的数据读写速度要高出几个数量级,将数据保存在内存中相比从磁盘上访问能够极大地提高应用的性能。同时,内存数据库抛弃了磁盘数据管理的传统方式,基于全部数据都在内存中重新设计了体系结构,并且在数据缓存、快速算法、并行操作方面也进行了相应的改进,所以数据处理速度比传统数据库的数据处理速度要快很多,一般都在10倍以上。内存数据库的最大...
分类:
数据库 时间:
2014-05-07 12:30:30
阅读次数:
382