- 博客(44)
- 资源 (6)
- 收藏
- 关注
转载 levenshtein distance
转自: http://www.cnblogs.com/biyeymyhjob/archive/2012/09/28/2707343.html编辑距离概念描述:编辑距离,又称Levenshtein距离,是指两个字串之间,由一个转成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。例如将kitten一字转成sitting:
2016-09-08 16:07:37
360
转载 最长递增子序列的长度
转自: http://blog.youkuaiyun.com/ztj111/article/details/2748152求数组中最长递增子序列写一个时间复杂度尽可能低的程序,求一个一维数组(N个元素)中的最长递增子序列的长度。例如:在序列1,-1,2,-3,4,-5,6,-7中,其最长的递增子序列为1,2,4,6。 分析与解法 根据题目的要求,求一维数组中的最长递
2014-11-08 10:27:27
424
转载 十七道海量数据处理面试题与Bit-map详解
转自: http://blog.chinaunix.net/uid-26565142-id-3127593.html
2014-10-24 16:14:22
340
转载 各种内部排序算法复杂度的比较和排序方法的选择
转自: http://blog.chinaunix.net/uid-26565142-id-3126683.html选择排序、快速排序、希尔排序、堆排序不是稳定的排序算法, 冒泡排序、插入排序、归并排序和基数排序是稳定的排序算法。冒泡法: 这是最原始,也是众所周知的最慢的算法了。他的名字的由来因为它的工作看来象是冒泡: 复杂度为O(n*n)。当数据为正序,将不会有交
2014-10-24 16:13:43
617
转载 《海量数据处理常用思路和方法》
转自: http://blog.chinaunix.net/uid-26565142-id-3127581.html1.Bloom filter 适用范围:可以用来实现数据字典,进行数据的判重,或者集合求交集 基本原理及要点: 对于原理来说很简单,位数组+k个独立hash函数。将hash函数对应的值的位数组置1,查找时如果发现所有hash函数对应位都是1说明
2014-10-24 16:12:56
278
原创 gperftools
===================gperftools===============1. libunwind-1.1.tar.gz tar zxvf libunwind-1.1.tar.gz cd libunwind-1.1 CFLAGS=-fPIC ./configure --prefix=/home/spider make
2014-10-24 13:09:52
500
转载 linux 如何查找命令的路径
转自 : http://blog.youkuaiyun.com/feng27156/article/details/37501235linux 下,我们常使用 cd ,grep,vi 等命令,有时候我们要查到这些命令所在的位置,如何做呢?linux下有2个命令可完成该功能:which ,whereis which 用来查看当前要执行的命令所在的路径。
2014-10-24 11:41:43
344
转载 error while loading shared libraries: xxx.so.x"错误的原因和解决办法
一般我们在Linux下执行某些外部程序的时候可能会提示找不到共享库的错误, 比如:tmux: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory原因一般有两个, 一个是操作系统里确实没有包含该共
2014-09-16 17:24:29
526
转载 Gprofile
一、GProfile简介 GProfile是gcc的一个工具,用于对应用程序的测试。 GProfile可以分析出函数的调用次数、函数的调用关系以及函数消耗的时间。 二、GProfile原理 在编译和链接你的程序的时候,gcc 在你应用程序的每个函数中都加入了一个名为mcount ( or "_mcount" , or "__mc
2014-09-11 11:08:58
967
转载 C/C++改变终端输出字体的颜色(Linux)
转自: http://blog.sina.com.cn/s/blog_628ba3e00101jll1.html
2014-09-09 22:24:57
1168
转载 tcp
一、TCP数据包格式 首部格式:http://en.wikipedia.org/wiki/Transmission_Control_Protocol 建立和关闭连接时,SYN和FIN需要占一个序列号,其它的纯ACK不占序列号。伪首部计算:http://www.tcpipguide.com/free/t_TCPChecksumCalculationandtheTCPPseudoHea
2014-09-09 13:14:10
373
转载 Makefile中include、-include、sinclude的区别
本文转载如果指示符“include”指定的文件不是以斜线开始(绝对路径,如/usr/src/Makefile...),而且当前目录下也不存在此文件;make将根据文件名试图在以下几个目录下查找:首先,查找使用命令行选项“-I”或者“--include-dir”指定的目录,如果找到指定的文件,则使用这个文件;否则继续依此搜索以下几个目录(如果其存在):“/usr/gnu/incl
2014-09-09 10:55:07
281
转载 linux 网卡软中断的查看与设置负载均衡
测试中发现服务器整体负载较低,但有cpu负载特别高,其中一个cpu几乎一半是软中断si,特别忙,而还有的cpu特别空闲。
2014-09-03 14:18:27
13977
转载 shutdown和close的区别
当所有的数据操作结束以后,你可以调用close()函数来释放该socket,从而停止在该socket上的任何数据操作:close(sockfd); 你也可以调用shutdown()函数来关闭该socket。该函数允许你只停止在某个方向上的数据传输,而一个方向上的数据传输继续进行。如你可以关 闭某socket的写操作而允许继续在该socket上接受数据,直至读入所有数据。
2014-08-27 16:21:03
337
转载 遭遇SIGPIPE
我写了一个服务器程序, 在Linux下测试时, 总是莫名退出. 最后跟踪到是write调用导致退出. 用gdb执行程序, 退出时提示"Broken pipe".最后问题确定为, 对一个对端已经关闭的socket调用两次write, 第二次将会生成SIGPIPE信号, 该信号默认结束进程.具体的分析可以结合TCP的"四次握手"关闭. TCP是全双工的信道, 可以看作两条单工信道, TCP连接
2014-08-27 16:16:19
412
转载 boost::weak_ptr
循环引用:引用计数是一种便利的内存管理机制,但它有一个很大的缺点,那就是不能管理循环引用的对象。一个简单的例子如下:#include #include #include #include class parent;class children;typedef boost::shared_ptr parent_ptr;typedef boost::shar
2014-08-22 15:45:49
269
转载 Defunct进程 僵尸进程
在测试基于 DirectFB+Gstreamer 的视频联播系统的一个 Demo 的时候,其中大量使用 system 调用的语句,例如在 menu 代码中的 system("./play") ,而且多次执行,这种情况下,在 ps -ef 列表中出现了大量的 defunct 进程,对程序的运行时有害的。按说system的源码中应该已经包含了wait,但也不能排除开发板上这个版本的system中可能没
2014-08-21 18:54:38
354
转载 Makefile中的.PHONY
/PHONY 来显示的指名一个目标是伪目标,有两个作用一个是改善性能,另外一个是来避免冲突。例如我写了这样一个Makefile[cpp] view plaincopytest1:main.o file1.o file2.o file3.o cc -o test1 main.o file1.o file2.o file3.
2014-08-15 17:47:43
409
转载 Linux进程间通信——使用消息队列
一、什么是消息队列消息队列提供了一种从一个进程向另一个进程发送一个数据块的方法。 每个数据块都被认为含有一个类型,接收进程可以独立地接收含有不同类型的数据结构。我们可以通过发送消息来避免命名管道的同步和阻塞问题。但是消息队列与命名管道一样,每个数据块都有一个最大长度的限制。Linux用宏MSGMAX和MSGMNB来限制一条消息的最大长度和一个队列的最大长度。
2014-08-15 15:42:55
251
转载 Linux进程间通信——使用共享内存
下面将讲解进程间通信的另一种方式,使用共享内存。一、什么是共享内存顾名思义,共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段共享内存连接到它们自己的地址空间中,所有进程都可以访问共享内存中的地址,就好像它们是由用C语言函数malloc
2014-08-15 15:40:04
228
转载 find 命令&& time命令 && gcc命令 && 查看主机操作系统 && 查看监听某个端口的进程 && 查看core文件路径
1. find # 与时间有关的参数: -mtime n : n为数字,意思为在n天之前的“一天内”被更改过的文件; -mtime +n : 列出在n天之前(不含n天本身)被更改过的文件名; -mtime -n : 列出在n天之内(含n天本身)被更改过的文件名; -newer file : 列出比file还要新的文件名 # 例如: find
2014-08-15 15:35:35
555
转载 提高程序运行效率的10个简单方法
对于每一个程序员来说,程序的运行效率都是一个值得重视,并为之付出努力的问题。但是程序性能的优化也是一门复杂的学问,需要很多的知识,然而并不是每个程序员都具备这样的知识,而且论述如何优化程序提高程序运行效率的书籍也很少。但是这并不等于我们可以忽略程序的运行效率,下面就介绍一下本人积累的一些简单实用的提高程序运行效率的方法,希望对大家有所帮助。注:以C/C++程序为例
2014-08-15 15:22:50
417
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人