- 博客(18)
- 资源 (6)
- 收藏
- 关注
转载 bm算法
1、概述在用于查找子字符串的算法当中,BM(Boyer-Moore)算法是目前相当有效又容易理解的一种,一般情况下,比KMP算法快3-5倍。BM算法在移动模式串的时候是从左到右,而进行比较的时候是从右到左的。常规的匹配算法移动模式串的时候是从左到右,而进行比较的时候也是是从左到右的,基本框架是:[cpp] view plaincopy
2013-07-29 20:50:56 1167 1
原创 BM算法实现源代码
void preBmBc(char *x, int m, int bmBc[]) { int i; for (i = 0; i < ASIZE; ++i) bmBc[i] = m; for (i = 0; i < m - 1; ++i) bmBc[x[i]] = m - i - 1;} void suffixes(char *x, int m
2013-07-29 20:40:48 2055 2
转载 Google glog
本文是根据自己的理解翻译组织了glog的manual,鉴于自身的理解能力和英语水平,可能存在谬误,欢迎大家指出!英文原文见http://google-glog.googlecode.com/svn/trunk/doc/glog.html1. 概述 Google glog是一个基于程序级记录日志信息的c++库,编程使用方式与c++的stream操作类似,例:
2013-07-21 20:45:14 1314
原创 glog函数调用出现c++:void value not ignored as it ought to be错误
下面是网上查到的问题分析**#: error: void value not ignored as it ought to be直译:“ void 值本应忽略,但没被忽略”。 看来是使用了 void 这个值。不能在表达式中使用 void 函数的值。1. 查看是否将 void 返回类型的函数赋值到返回值。2. 检查是否有c, c++ 混编,名字改编造成
2013-07-21 17:26:23 3470
转载 Mysql数据回滚和备份恢复方法
MYSQL的事务处理主要有两种方法。1、用begin,rollback,commit来实现begin 开始一个事务rollback 事务回滚commit 事务确认2、直接用set来改变mysql的自动提交模式MYSQL默认是自动提交的,也就是你提交一个QUERY,它就直接执行!我们可以通过set autocommit=0 禁止自动提交set autocommit=1
2013-07-17 21:44:38 6547
转载 mysql 创建表的实例
- -- 表的结构 `os_currentstep`-- CREATE TABLE `os_currentstep`( `ID` bigint(20)NOT NULL, `ENTRY_ID` bigint(20)defaultNULL,
2013-07-10 20:23:56 1737
转载 mysql sql语句大全 ?
1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice'disk','testBack','c:\mss
2013-07-10 17:46:57 1313
原创 my makefile
EXE := CircleData.exeGCC := g++CFLAGS := -c -gSOURCE := $(wildcard ./*.cpp)OBJS := $(patsubst %.cpp,%.o,$(SOURCE))LIBS := pthread$(EXE):$(OBJS)$(GCC) -o $@ -g
2013-07-10 09:39:55 981
转载 Linux Epoll介绍和程序实例
原文链接http://blog.csdn.net/sparkliang/article/details/4770655Linux Epoll介绍和程序实例1. Epoll是何方神圣?Epoll可是当前在Linux下开发大规模并发网络程序的热门人选,Epoll 在Linux2.6内核中正式引入,和select相似,其实都I/O多路复用技术而已,并没有什么神秘的。其实在Linu
2013-07-03 17:31:08 895
转载 linux下用select实现非阻塞socket
本文并非解释什么是非阻塞socket,也不是介绍socket API的用法, 取而代替的是让你感受实际工作中的代码编写。虽然很简陋,但你可以通过man手册与其它资源非富你的代码。请注意本教程所说的主题,如果细说,内容可以达到一本书内容,你会发现本教程很有用。 本教程内容如下: 1. 改变一个阻塞的socket为非阻塞模式。
2013-07-03 15:34:49 9092 1
转载 select 非阻塞 sock服务端客户端代码实例
sever:#include #include #include #include #include #include #include #include #include #include #include #include #define MAXBUF 1024 typedef struct C
2013-07-03 14:50:58 2547 1
转载 [linux] 将socket设置为非阻塞(non-blocking)
有一个非常有迷惑性的做法是:u_long has = 1;ioctl(m_sock, FIONBIO , &has);这个函数会非常无耻的返回你success,但是它实际上很可能什么也没做。正确的做法应该是使用fcntl:int flags = fcntl(m_sock, F_GETFL, 0);fcntl(m_sock, F_SETFL, flags|O_NONB
2013-07-03 11:31:50 2797
转载 fcntl的用法
功能描述:根据文件描述词来操作文件的特性。#include #include int fcntl(int fd, int cmd); int fcntl(int fd, int cmd, long arg); int fcntl(int fd, int cmd, struct flock *lock);[描述]fcntl()针对(文件)描述符提供控制。参数fd
2013-07-02 19:34:57 933
转载 setsockopt()用法(参数详细说明)
int setsockopt(SOCKET s,int level,int optname,const char* optval,int optlen);s(套接字): 指向一个打开的套接口描述字level:(级别): 指定选项代码的类型。SOL_SOCKET: 基本套接口IPPROTO_IP: IPv4套接口IPPROTO_IPV6: IPv6套接
2013-07-02 19:17:52 870
原创 C++类静态成员变量和const常量的初始化方法
C++类静态成员变量和const常量在定义类的时候就必须初始化,否则都会编译出错。而具初始化方法为:C++类静态成员变量初始化方法#include #include #include #include using namespace std;class A{public: static void fun() {
2013-07-02 10:46:59 6849
原创 第一次用shell脚本来自动运行带参程序
将目录下的part-开头的文件带入程序处理#!bin/shFILES=/data5/follow_relation_list_part_00000/part-* file=""for f in $FILESdofile="${f}.txt"./test ${f} > $filedone运行的时候:sh -x exe.sh可以看到参数情
2013-07-01 11:14:12 2077
转载 详细解说STL hash_map系列
0 为什么需要hash_map用过map吧?map提供一个很常用的功能,那就是提供key-value的存储和查找功能。例如,我要记录一个人名和相应的存储,而且随时增加,要快速查找和修改:岳不群-华山派掌门人,人称君子剑张三丰-武当掌门人,太极拳创始人东方不败-第一高手,葵花宝典...这些信息如果保存下来并不复杂,但是找起来比较麻烦。例如我要找"张三丰"的信息,
2013-07-01 10:06:33 1001
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人