- 博客(15)
- 资源 (3)
- 收藏
- 关注
转载 grep之字符串搜索算法Boyer-Moore由浅入深
本文作者: 伯乐在线 - 敏敏 这篇长文历时近两天终于完成了,前些天帮伯乐在线翻译一篇文章《为什么GNU grep如此之快?》,里面提及到grep速度快的一个重要原因是使用了Boyer-Moore算法作为字符串搜索算法,兴趣之下就想了解这个算法,发现这个算法一开始还挺难理解的,也许是我理解能力不是很好吧,花了小半天才看懂,看懂了过后就想分享下,因为觉得这个算法真的挺不错的,以前一直以为
2013-12-11 15:38:28
564
转载 [综合面试] 牛人整理分享的面试知识:操作系统、计算机网络、设计模式、Linux编程,数据结构总结
基础篇:操作系统、计算机网络、设计模式一:操作系统1. 进程的有哪几种状态,状态转换图,及导致转换的事件。2. 进程与线程的区别。3. 进程通信的几种方式。4. 线程同步几种方式。(一定要会写生产者、消费者问题,完全消化理解)5. 线程的实现方式. (也就是用户线程与内核线程的区别)6. 用户态和核心态的区别。7. 用户栈和内核栈的区
2013-10-02 20:25:02
903
2
转载 [Java面试] java程序员面试必备的32个考点
第一,谈谈final, finally, finalize的区别。 final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。finally是异常处理语句结构的一部分,表示总是执行。finalize是 Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。第二,Anonymous Inn
2013-10-02 20:22:56
2281
转载 [综合面试] 面试70问 经典回答
1、请你自我介绍一下你自己, 回答提示:一般人回答这个问题过于平常,只说姓名、年龄、爱好、工作经验,这些在简历上都有,其实,企业最希望知道的是求职者能否胜任工作,包括:最强的技能、最深入研究的知识领域、个性中最积极的部分、做过的最成功的事,主要的成就等,这些都可以和学习无关,也可以和学习有关,但要突出积极的个性和做事的能力,说得合情合理企业才会相信。企业很重视一个人的礼貌,求职者要尊重考官,
2013-10-02 20:22:04
838
1
转载 字符串匹配的KMP算法
作者: 阮一峰日期: 2013年5月 1日字符串匹配是计算机的基本任务之一。举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串"ABCDABD"?许多算法可以完成这个任务,Knuth-Morris-Pratt算法(简称KMP)是最常用的之一。它以三个发明者命名,起头的那个K就是著名科学家Don
2013-09-30 15:37:15
339
原创 Liunx 中使用ssh登录配置问题
一、使用SSH无密码登录问题设置;1:在需要无密码登录的主机上运行如下命令 $ ssh-keygen -t rsa 将会在用户文件夹下生成:.ssh/ 2:将.ssh文件夹下的id_ras.pub ;传到需要登录的主机上$scp ./.ssh/id_ras.pub root@10.0.0.2:/root/3:将10.0.0.2主机上将id_r
2013-09-02 22:41:32
797
转载 浅析container_of(ptr, type, member)
转载自:http://blog.chinaunix.net/u1/38994/showart_402903.html问题:如何通过结构中的某个变量获取结构本身的指针???关于container_of见kernel.h中:/*** container_of - cast a member of a structure out to the containing structu
2013-08-28 21:00:07
403
原创 Ubuntu编译Linux内核过程
Ubuntu编译Linux内核过程一、下载源代码和编译软件的准备下载内核源代码:http://www.kernel.org/注意,点击2.6.39.3内核的F版,即完整版。如果你懒得去网站点联接,运行下列命令:代码:$cd~$wgethttp://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.39.3.tar.bz2安
2013-08-28 09:17:34
577
原创 LINUX运维常用命令
1.删除0字节文件find -type f -size 0 -exec rm -rf {} \;2.查看进程按内存从大到小排列ps -e -o "%C : %p : %z : %a"|sort -k5 -nr3.按cpu利用率从大到小排列ps -e -o "%C : %p : %z : %a"|sort -
2013-07-13 18:31:36
502
转载 Linux下autoconf和automake使用
作为Linux下的程序开发人员,一定都遇到过Makefile,用make命令来编译自己写的程序确实是很方便。一般情况下,大家都是手工写一个简单Makefile,如果要想写出一个符合自由软件惯例的Makefile就不那么容易了. 在本文中,将介绍如何使用autoconf和automake两个工具来帮助我们自动地生成符合自由软件惯例的Makefile,这样就可以象常见的GNU程序一样,只要使用“./c
2013-07-12 16:13:01
428
转载 Linux下crontab命令的用法
Linux下crontab命令的用法 2007年5月21日任务调度的crond常驻命令 crond 是linux用来定期执行程序的命令。当安装完成操作系统之后,默认便会启动此任务调度命令。crond命令每分锺会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。而linux任务调度的工作主要分为以下两类: 1、系统执行的工作:系统周期性所要执行的工作,如备份系统数
2013-07-03 14:19:14
430
转载 UNIX环境高级编程(第二版)/ APUE 源码编译与使用
确保你已经安装了gcc和gawk。步骤1.到www.apuebook.com下载源码2.tar解包,cd apue.2e3.vi Make.defines.linux 修改变量WKDIR,指向你的apue源码的位置,我的是/code/apue.2e,所以 WKDIR=/code/apue.2e4.vi include/apue.h 增加一
2013-06-28 21:33:16
837
转载 Java 远程方法调用
java rmi即java远程接口调用,实现了2台虚拟机之间的程序调用,这样,网络上的任何两台计算机就可以相互调用对方的程序(如果允许)。下面就以经典的 Hello world作为例子讲解。开发rmi的步骤如下。1、编写远程接口,远程接口实现类2、编译3、生成接口实现类存根4、在服务器端启动rmiregistry命令5、在服务端注册发布远程对象6、在客户端获取远程对象
2013-06-27 21:37:36
509
转载 堆和栈的区别(转过无数次的文章)
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两
2013-06-27 15:33:29
355
原创 《Unix环境高级编程》学习笔录
在接下来的半年时间内,希望通过对经典著作《Unix环境高级编程》做一些深入的学习和探讨。主要目的有: 通过学习了解Unix设计的标准,系统的学习在Unix和类Unix上的基础编程,和系统调用;通过对标准函数的学习,进一步学习Unix和Linux系统内核的设计,深入理解内核的编程接口;学习记录总结。
2013-05-31 19:47:58
440
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人