- 博客(29)
- 资源 (1)
- 收藏
- 关注
原创 Implement WalkSAT algorithm that solve the CNF Boolean formula
Goal Implement WalkSAT algorithm that solve the CNF Boolean formula.Implement Encoder that generate CNF notation for N-Queen for given Using both module to solve N-Queen problem. First, Wh
2010-03-27 21:15:00
1027
原创 Dijkstra Algorithm 算法详解
算法介绍 Dijkstra算法是由荷兰计算机科学家艾兹格·迪科斯彻发现的。算法解决的是有向图中最短路径问题。 举例来说,如果图中的顶点表示城市,而边上的权重表示著城市间开车行经的距离。 Dijkstra算法可以用来找到两个城市之间的最短路径。 Dijkstra算法的输入包含了一个有权重的有向图G,以及G中的一个来源顶点S。 我们以V表示G中所有顶点的集合。 每一个图中的边,都是两个顶点所形成
2009-12-12 20:42:00
2068
转载 一个很全面的Binary Search Tree java实现
<img id="_0_90_Open_Image" style="display: inline;" onclick="this.style.display=none; document.getElementById(_0_90_Open_Text).style.display=none; document.getElementById(_0_90_Closed_Image
2009-12-02 23:14:00
7900
转载 Huffman Tree
什么是Huffman coding?霍夫曼编码(Huffman Coding)是一种编码方式,是一种用于无损数据压缩算法。1952年,David A. Huffman在麻省理工攻读博士时所发明的,并发表于《一种构建极小多馀编码的方法》(A Method for the Construction of Minimum-Redundancy Codes)一文。在电脑资料处理中,霍夫曼编码使用变
2009-11-23 15:03:00
2395
1
转载 Java 读取文件小例一则
import java.io.BufferedReader;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;public class TestReadFile{ public static void main(String[] args)
2009-11-14 02:21:00
990
原创 二叉树的表示(基于一维数组)
通常有三种方法表示二叉树(Binary Tree)1.基于数组,带有索引。可以表示任何二叉树。2.基于一维数组,通常用来表示完全二叉树(Complete Binary Tree)3.基于引用,类似链表。 以下是基于居于一维数组的JAVA CODE public class ArrayTree { private Object array[];
2009-11-10 20:27:00
4970
原创 Ocaml 入门整理2
Ocaml Standard Library 了解ModuleStructure = implementation of module signture = interface of module signture 有点类似Java 里面的Interface举个例子module type STACK = sig type a t e
2009-11-09 17:11:00
1076
转载 一个关于计求质数的算法
public class Primes {public static void main(String args[]) {int maxValue = 50; // The maximum value to be checked.// Check all values from 2 to maxValue:OuterLoop:for(int i=2 ; i<=maxValue
2009-10-30 00:00:00
764
转载 TRIE树 介绍
Trie树就是字符树,其核心思想就是空间换时间。举个简单的例子。给你100000个长度不超过10的单词。对于每一个单词,我们要判断他出没出现过,如果出现了,第一次出现第几个位置。这题当然可以用hash来,但是我要介绍的是trie树。在某些方面它的用途更大。比如说对于某一个单词,我要询问它的前缀是否出现过。这样hash就不好搞了,而用trie还是很简单。现在回到例子中,如果我们用最傻的方法,对于每一
2009-10-26 15:51:00
1329
原创 Ocaml 的入门整理 1
最近开始接触Ocaml,一开始也是摸不着头脑。看着PPT,学习一下。 Ocaml 有几个比较显著的特征 1.Value 为中心 所有的一切都是value 一旦定义了就无法改变了 2.函数型的语言 函数也是value 3.具有严格的类型type 保障程序的安全 ML的有很多,比较有名的有Ocaml(INRIA,France) SML(Bell,lab&Prin
2009-10-25 02:11:00
15059
原创 三种方法求解Fibonacci(斐波那契)数列
三种方法求解Fibonacci(斐波那契)数列(一) 所谓Fibonacci数列是指这样一种数列,它的前两项均为1,从第三项开始各项均为前两项之和。用数学公式表示出来就是:1 (n=1,2)fib(n)=fib(n-1)+fib(n-2) (n>2) 可以证明斐波那契数列的通项公式为fib(n) = [(1+√5)/2]^n /√5 - [(1-√5)/2]^n /√5 (n=1,2,
2009-09-28 09:49:00
5997
转载 算法复杂度
1.时间复杂度(1)时间频度一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了。并且一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多。一个算法中的语句执行次数称为语句频度或时间频度。记为T(n)。(2)时间复杂度在刚才提到的时间频
2009-09-28 09:47:00
572
转载 时间复杂度和空间复杂度
空间复杂度:是程序运行所以需要的额外消耗存储空间,一般的递归算法就要有o(n)的空间复杂度了,简单说就是递归集算时通常是反复调用同一个方法,递归n次,就需要n个空间。时间复杂度:一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多。一个算法中的语句执行次数称为语句频度或时间频度。记为T(n)。一般情况下,算法中基本操作重复执行的次数是问题规模n的某个函数,
2009-09-28 09:46:00
523
原创 从JavaCC入手
这个学期上数据库课,最后的project就是自己写一个数据库。整个PROJECT分为3各阶段这次是第一个阶段,实现SQL parser要求是1.Parses SQL statements such as CREATE TABLE, DROP TABLE, DECS, SHOWTABLES, INSERT, UPDATA, DELETE, SELECT 2.Parses SQL st
2009-03-22 19:09:00
1270
原创 DISCUZ代码分析
logging.php //定义操作页面define(CURscrīpt, logging);//包含公共文件require_once ./include/common.inc.php;//包含misc函数文件require_once DISCUZ_ROOT../include/misc.func.php;//判断动作//注销if($ac
2009-02-04 18:38:00
3711
原创 改造自discuz的mysql查询类
/** * mysql查询类 * */ class dbQuery { /** * 查询总次数 * * @var int */ var $querynum = 0; /** * 连接句柄 * * @var object
2009-02-04 18:20:00
957
转载 Writing device drivers in Linux: A brief tutorial
内容比较多,就不转了http://www.freesoftwaremagazine.com/articles/drivers_linux附加中文知识准备要开发Linux设备驱动,需要掌握以下知识:• C编程 需要掌握深入一些的C语言知识,比如,指针的使用,位处理函数,等。• 微处理器编程 需要理解微机的内部工作原理:存贮器地址,中断,等。这些内容对一个汇编程序员应该比较熟悉。Linux下有好几种不
2008-11-24 22:05:00
883
转载 ssize_t and size_t
http://www.delorie.com/gnu/docs/glibc/libc_239.htmlData Type: ssize_t This data type is used to represent the sizes of blocks that can beread or written in a single operation. It is similar to s
2008-11-24 21:08:00
541
原创 Recursive Copy Command
Recursive Copy Command(CP command with -R argument) /*Course: system programming * *2008-11-24* */#include #include #include #include #include #include #include #include #define BUFFER_SIZE 1048576/*
2008-11-24 16:04:00
579
转载 A tiny shell program with job control
那天被布置了个作业,写SHELL研究了老半天,下面这个是作业的标准答案/* * tsh - A tiny shell program with job control * * Clara Raubertas * clara1 */#include #include #include #include #include #include #include #include #include /
2008-11-24 15:57:00
3935
1
原创 学习assembly language之前理顺一下思路
“在学习真正的汇编语言之前,必须理解INTEL8086处理器系列的基本机构,否则机器指令讲没有任何意义。” INTEL系列CPU一般都归为冯.诺依曼式机器。其基本模块是:CPU,储存器和输入输出设备。 CPU与储存器和I/O设备之间的通信方法是向地址总线发送一个数值来选取一个储存单元或者I/O设备,他们都有唯一的二进制地址。因此,CPU,I/O以及储存设备都将通过数据放到数据总线上来传递彼此
2008-10-05 19:25:00
987
转载 难得的p2p的开源项目[转]
不是专业的评价,就像读书笔记吧:1、Azureus(http://azureus.sourceforge.net):这是java版的betorrent,最新版本2.4.0.2。从网上直接下载的源代码是没法构建的,所用的库没有在包里面。可以到:http://azureus.cvs.sourceforge.net/azureus/这个地方去找。对我们研究的意义主要在于参考其算法。2、Shareaza
2008-09-21 23:18:00
15441
1
转载 带权图最短路径 Dijkstra 算法和实现
单源最短路径问题 (Single-Source Shortest-PathsProblem) 单源最短路径问题:已知有向带权图(简称有向网)G=(V,E),找出从某个源点s∈V到V中其余各顶点的最短路径。
2008-06-13 00:13:00
5289
1
转载 线程和进程的区别
轉自:http://blog.csdn.net/jery_lee/archive/2004/10/15/137225.aspx多线程共存于应用程序中是现代操作系统中的基本特征和重要标志。用过UNIX操作系统的读者知道进程,在UNIX操作系统中,每个应用程序的执行都 在操作系统内核中登记一个进程标志,操作系统根据分配的标志对应用程序的执行进行调度和系统资源分配,但进程和线程有什么区别呢?
2008-06-12 23:15:00
1096
2
转载 跟我一起写 Makefile
跟我一起写 Makefile 陈皓概述——什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些 Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多 的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编
2008-06-12 23:08:00
420
转载 Linux-C-Socket编程
什么是Socket Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。 Socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix系统的输入和输出的话,就很容易了解Socket了。网络的 Socket数
2008-06-11 19:01:00
823
转载 sprintf,你知道多少?
选自《CSDN 社区电子杂志——C/C++杂志》http://emag.csdn.net 2005 年1 月 总第1 期 - 93 -本文作者:steedhorse(晨星)printf 可能是许多程序员在开始学习C 语言时接触到的第二个函数(我猜第一个是main),说起来,自然是老朋友了,可是,你对这个老朋友了解多吗?你对它的那个孪生兄弟sprintf 了解多吗?在将各种类型的数据构造成字符串时,
2008-06-09 14:42:00
429
转载 fork的精彩讨论整理
第一帖 问题帖#include ;#include ;main (){ pid_t pid; pid=fork(); if (pid printf("error in fork!"); else if (pid == 0) printf("i am the child proc
2008-06-07 21:52:00
415
转载 Pthread 与 Linux
Pthread 与 LinuxPthread本来是一套用户级线程库, 但在Linux上实现时, 却使用了内核级线程来完成, 这样的好处是, 可以充分的提高程序的并发性, 线程也可以象以前一样调用read这样的函数, 而不必担心会由于阻赛影响其它的线程的运行. 但这样一来, linux的线程就不是标准的了. 下面结合Linux上的实现来谈一谈Pthread.一 基本概念------
2008-06-02 18:50:00
506
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人