Archive

Archive for December, 2008

操作系统,模拟进程管理之PCB块管理法,C语言实现

December 24th, 2008 2 comments

首先大家祝福平安夜快乐啊,今天要发布的代码是一款C语言编写的模拟操作系统管理进程的程序调试环境TC,使用了PCB进行进程管理控制,建立三个基本的队列:等待、执行、阻塞进行模拟操作系统的进程管理,模拟进程的调度,模拟用户的创建、执行、阻塞、挂起、唤醒等操作

最近要准备准备操作系统考试,所以放一个程序跟大家分享

Read more…

Categories: 算法研究 Tags: ,

[WP]常见wordpress安装,运行,使用出现500错误分析和解决方法

December 23rd, 2008 7 comments

常见wordpress安装,运行,使用出现500 internal error错误分析和解决方法

最近因为写了一篇博文,内容是关于我的一次WP故障情况的解决过程和分析,然后有放在wordpress.org.cn上,结果有很多朋友看过后还仍然有少部分朋友没能解决问题,在我的博客给我留言,在此我把我目前接触到的几种PHP 500 Error错误情况和处理方法跟大家分享,如果你用这些方法解决了问题,欢迎留言

首先解释下500 internal Error是个什么东西,翻译过来就是服务端系统内部错误,错误的编号500 ,产生的原因也有多种,大家不要觉得内部错误很可怕,其实很多情况只是服务器的安全措施而已,比如脚本解析错误或者其他的异常服务器也会出现500错误,并不是正真的服务器内部错误,本文主要说的也是这些相关的错误,我就曾经试过上传一个去掉分号的phpinfo() 结果直接500而不是PHP的错误号和提示让你检查是否丢失分号,如果你的主机是这种情况,那么以后的500错误应该是常事了

Read more…

Categories: 博客技巧 Tags: ,

[算法]经典算法8皇后(N皇后)问题的解法,C语言实现

December 22nd, 2008 2 comments

今天写点简单的,C语言求解八皇后问题,相信学过C语言的朋友一定知道这个经典问题吧,解法也是多种,目前主要有回溯,递推两种方法,今天讲回溯+递归的求法,效率可能不太高,不过直接易于理解

问题 : 能不能在一个标准的国际象棋棋盘上放8个皇后,使她们相互之间不能互吃具体点就是,在一个8*8的棋盘上放皇后,皇后是所有方向上都可以移动的,现在要让她们不能互吃的话就要使得她们不会在同一条线上

具体解法:从第一行第一列的位置开始放棋子(假定列优先),然后记录其占用的行斜直线的编号,然后放第二个棋子,在排除前面所有棋子的所占的编号的情况下选择到有效位置,然后继续,直到放满8个棋子为止

Read more…

Categories: 算法研究 Tags:

求在10000范围内的所有质数,要求其的值等于两个质数的平方和

December 21st, 2008 No comments

一条学校的ACM演练题目,很让人郁闷

今天之所以想讲关于求质数的算法,完全跟这条题目有关,看到题目的朋友一定现在已经有了思路了吧,不过下面的讲解会让你很郁闷,hoho,带上你的思维,跟着我来

第一,分析题目 排除10000以内,就是求一个质数满足其的值等于两个质数的平方和就是要满足

K= A^2 + B^2 这个要求,其中A,B是质数,K当然是要求的质数,那好解法可以这样求一个质数,然后再求出另一个不同的,为什么不同,要是相同 K>2的话,K肯定不质数了,好然后再平方啊,再来相加,最后再验证所得的K是不质数了,结果出来,说实话,当你等待了N秒之后发现结构仍然没有出来之后的时候你会觉得自己的算法该优化了,其实我开始是这么想的,结果。。。

Read more…

Categories: 算法研究 Tags:

[算法]用两种求质数的算法(穷举法,筛选法),C语言实现

December 21st, 2008 1 comment

今天考试的题目是记不得了,等题目公开了再给大家分析,今天讲点经典的算法,求质数,相信很多人还是记得当年的穷举法了吧,就是不断的让每一个数除以一个小于他的数最大到sqrt(N),然后得出结果,算法时间复杂度O(N^2),优化过的算法O(N * sqrt(N)),经典的算法我就不讲了,初学者如果不懂的话,可以留言,或者跟我联系

Read more…

Categories: 算法研究 Tags: , ,

[算法]字符串匹配算法之BM算法,C语言实现

December 20th, 2008 2 comments

今天继续昨天的话题,字符串匹配算法之BM算法,BM可以说是继KMP算法之后更加优秀的字符串匹配算了,BM 是大师Boyer-Moore的算法杰作, 所以称BM算法,相比KMP算法效率提高了不少,在空间上BM算法需要一个跟匹配字符集相同的辅助空间,已存放不同的匹配字符,比KMP要浪费不少,但是这也是BM的特色,可以在不同的字符集使用,两个字符集的话那就放一个字符集同大小的辅助空间就好,最复杂字符就很好了,目前大部分的高级语言比如C#都使用了BM及其改进算法(AC-BM算法),相比KMP匹配两个中文字符出现的半角结果而言,我还是偏好BM ,虽然浪费空间,但是,实现接近低于线性的消耗,少了一个n以上的的匹配时间,这点也是客观的

Read more…

分享几条来自微软(Microsoft)的算法设计笔试试题

December 19th, 2008 4 comments

今天晚间上网转了转,看到了,几条来自微软(Microsoft)的几条笔试试题,主要是针对微软学生中心的实习机会的,诸位如果想到微软实习的话,可以考虑自己做做看,感觉上对初学者比较困难,本人目前是没时间写代码了,最近忙者考试,诸位如果有想法的话,直接留言,或者可以跟我联系吧,

第一题
一个整数数列,元素取值可能是0~65535中的任意一个数,相同数值不会重复出现
。0是例外,可以反复出现。
请设计一个算法,当你从该数列中随意选取5个数值,判断这5个数值是否连续相
邻。

Read more…

Categories: 算法研究 Tags: