摘要: 字符串匹配算法详解(上)介绍了BF算法和KMP算法,这一篇接着来介绍Horspool算法和BM算法。其中Horspool算法相当于是BM算法的特例,或者说是简化版的BM算法。 算法三:Horspool算法 Horspool是后缀搜索,有点创新啊,大家都从左往右匹配,它反着来。也就是搜索已读入文本中是否含有模式串的后缀;如果有,是多长,显然,当后缀长度等于模式串的长度时,我们就找到了一个匹配。 ... 阅读全文
posted @ 2013-10-15 22:44 mkdir 阅读(392) 评论(0) 推荐(0) 编辑
摘要: 奥地利符号计算研究所(Research Institute for Symbolic Computation,简称RISC)的Christoph Koutschan博士在自己的页面上发布了一篇文章,提到他做了一个调查,参与者大多数是计算机科学家,他请这些科学家投票选出最重要的算法,以下是这次调查的结果,按照英文名称字母顺序排序。 A搜索算法——图形搜索算法,从给定起点到给定终点计算出路径。... 阅读全文
posted @ 2013-10-13 16:28 mkdir 阅读(348) 评论(0) 推荐(0) 编辑
摘要: 今天有位朋友在微博上问我这样一个问题: “@老码农的自留地 ,最近出于学习目的写一个管理系统,越到后边,越觉得自己前边的代码写得烂。前辈,我想让代码写得更好一点,能不能谈谈你的经验,给我指点一下!” 我在回复里刚写了几句,就意识到140个字很难把我的想法说清楚,本着知无不言言无不尽的好为人师精神,我决定把我的回答写成一篇博文。 首先要说明的是,我写这篇博客并不代表本人觉得自己的代码写得有多好... 阅读全文
posted @ 2013-10-12 20:40 mkdir 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 关于《深入理解计算机系统》“这本书的中译名为“深入理解计算机系统”,我非常,十分,以及百分之一百二十地不满意。我这么说的原因在于这个译法完全扭曲了书的本意。如果直译原书名,应该是类似于“以程序员的视角理解计算机系统”,何来“深入”二字。可能在国内编辑看来,这是讲系统的,用C和汇编语言的,因此很“深入”,但我认为这只能说明国内技术氛围的浅薄。因为事实上,这是一本入门级别的书,这本书其实并不“深入”,它谈论的内容还是相对比较浅的。但“浅”不代表“浅薄”,写一本面向初学者的好书往往是非常困难的,因此无论是SICP还是CSAPP,它的作者都是顶尖学府的教授,结合多年教学经验而写出来的。CMU把这本书作 阅读全文
posted @ 2013-10-12 20:30 mkdir 阅读(1632) 评论(0) 推荐(1) 编辑
摘要: Linux系统默认情况下,是可以通过ssh以root权限登录的。但出于安全考虑,这样的权限是不合适的,因为黑客可能通过暴力破解你的root密码,然后进入你的系统,oh,damn it.....同样是出于安全性考虑,我们在日常使用linux系统时,一般是通过普通用户来进行操作,在某些操作需要root权限时,通过su - 命令,或者sudo命名获取root权限进行操作,而不是一直以root用户在系统中横冲直撞,因为说不定什么时候你手一抖,就进行了一些危险性的操作。那么如何禁止以root通过ssh登录到系统呢?【如果你还没有为自己的系统创建普通用户,那么你通过root用户登入系统后,使用adduse 阅读全文
posted @ 2013-10-12 20:17 mkdir 阅读(2878) 评论(0) 推荐(0) 编辑
摘要: 一:Makefile介绍:Makefile是为自动化编译而生。我们写好makefile文件后,只需要一个make命令,就可以完成整个项目的编译工作,大大提高了开发效率。也许刚开始学习编程时,你不会感觉到makefile的重要性。比如,你在linux环境下编写了一个叫hello.c的程序,然后通过输入:gcchello.c-ohello便生成名为hello可执行文件。随着我们编写的程序规模越来越大,你会发现用这种纯手工的做法去编译程序,是极其低效的。那么我们看看,如何通过编写makefile文件让程序的编译变得高效、自动化吧!二:makefile编写规则Makefile文件的作用是告诉make命 阅读全文
posted @ 2013-10-12 20:03 mkdir 阅读(1808) 评论(0) 推荐(0) 编辑
摘要: 41.命令:ifconfigifconfig命令用于配置网络接口信息。如配置网络接口的ip地址,默认网关地址等,以便机器能够联通互联网。显示当前网络接口信息viidiot@ubuntu:~$ifconfigeth0Linkencap:EthernetHWaddr00:0c:29:b3:de:1cinetaddr:192.168.1.141Bcast:192.168.1.255Mask:255.255.255.0inet6addr:fe80::20c:29ff:feb3:de1c/64Scope:LinkUPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1RXp 阅读全文
posted @ 2013-10-05 11:09 mkdir 阅读(1313) 评论(0) 推荐(0) 编辑
摘要: 也许你已经发现第一篇文章非常的有用,这篇文章是继对初级Linux用户非常有用的20个命令的一个延伸。第一篇文章的目的是为新手准备的而这篇文章则是为了Linux的中高级用户。在这里你将学会如何进行自定义搜索,知道正在进行的进程和停掉进程,如何使用Linux的强势功能和如何在系统内编译C,C++和JAVA程序。21. 命令: Find搜索指定目录下的文件,从开始于父目录,然后搜索子目录。注意: `-name‘选项是搜索大小写敏感。可以使用`-iname‘选项,这样在搜索中可以忽略大小写。(*是通配符,可以搜索所有的文件;‘.sh‘你可以使用文件名或者文件名的一部分来制定输出结果)注意:以上命令查找 阅读全文
posted @ 2013-09-22 20:56 mkdir 阅读(583) 评论(1) 推荐(2) 编辑
摘要: 你打算从Windows换到Linux上来,还是你刚好换到Linux上来?哎哟!!!我说什么呢,是什么原因你就出现在我的世界里了。从我以往的经验来说,当我刚使用Linux,命令,终端啊什么的,吓了我一跳。我担心该记住多少命令,来帮助我完成所有任务。毫无疑问,在线文档,书籍,man pages以及社区帮了我一个大忙,但是我还是坚信有那么一篇文章记录了如何简单学习和理解命令的秘籍。这激发了我掌握Linux和使它容易使用的积极性。本文就是通往那里的阶梯。1. ls命令ls命令是列出目录内容(List Directory Contents)的意思。运行它就是列出文件夹里的内容,可能是文件也可能是文件夹。 阅读全文
posted @ 2013-09-22 20:53 mkdir 阅读(901) 评论(0) 推荐(1) 编辑