10

原文: 从HTML文件中抽取正文的简单方案

 

The Easy Way to Extract Useful Text from Arbitrary HTML

从HTML文件中抽取正文的简单方案

作者:alexjc

译者:恋花蝶(http://blog.csdn.net/lanphaday)

原文地址:http://ai-depot.com/articles/the-easy-way-to-extract-useful-text-from-arbitrary-html/

译 ... (全文...)

24

        虽然轻量级 Web 服务器有很多共同之处,但是各有各的不同。大多数轻量级 Web 服务器是用 C 编写的,但是实践证明,有些其他实现语言也可以成功地用于实现服务器,这些语言包括 Erlang、Java、Lisp、Lua、Perl、Python 和 Tcl。

由于很多特定的原因,可能会要求选用某种 “不常见” 的语言:

  • 教学:使用轻量级 Web 服务器来制定一个重要、但是并不太大的目标。这是获得使用某种语言的经验的好方法。
  • 虽然用 C 编写的轻量级 Web 服务器大小为 10-50 KB,更高级的语言有 100 KB 到数 MB 的运行时,但整个 Web 服务器的源文件可能只占几千个字节。这种 Web 服务器占用的空 ... (全文...)
17

作者:Blackbird 文章出处:友善之臂旅店

在3D图形编程中,经常要求平方根或平方根的倒数,例如:求向量的长度或将向量归一化。C数学函数库中的sqrt具有理想的精度,但对于3D游戏程式来说速度太慢。我们希望能够在保证足够的精度的同时,进一步提高速度。

Carmack在QUAKE3中使用了下面的算法,它第一次在公众场合出现的时候,几乎震住了所有的人。据说该算法其实并不是Carmack发明的,它真正的作者是Nvidia的Gary Tarolli(未经证实)。


//
// 计算参数x的平方根的倒数
//
float InvSqrt (float x)
{
float xhalf = 0.5f*x;
int i = *(int*)&x;
i = 0x5f37 ... (全文...)

29

这个结构一般用于数据库的索引,综合效率非常高,像 Berkerly DB , sqlite , mysql 数据库都使用了这个算法处理索引。
如果想自己做个小型数据库,可以参考一下这个算法的实现:


/* btrees.h */
/*
* 平衡多路树的一种重要方案。
* 在 1970 年由 R. Bayer 和 E. McCreight 发明。
*/
#define M 1
/* B 树的阶,即非根节点中键的最小数目。
* 有些人把阶定义为非根节点中子树的最大数目。
*/
typedef int typekey;
typedef struct btnode { /* B-Tree 节点 */
int d; /* 节点中键的数目 */
typekey k[2*M]; /* 键 */
char *v[2*M]; /* 值 */
struct btnode *p[ ... (全文...)

27

2007年5月26号

百度之星编程比赛 第二题 数7


#include
#include

//int maxa=10002, maxb=10002, maxc=240003, maxd=2001;
#define maxa 10002
#define maxb 10002
#define maxc 240003
#define maxd 2001

int a[maxa], ra[maxa], b[maxb], rb[maxb], c[maxc];

int main()
{
int digit[10];
int x,y,z,n,mc,mra,mrb;
int i,j,k,kk,flag,f;
char s[6];

memset(a, 0, sizeof(a) );
memset(ra, 0, sizeof(ra));
memset(b, 0, sizeof(b) );
memset(rb, 0, sizeof(rb));
memset(c, 0, sizeof(c) );

// calc for req1 and first half of query n
for (i=1, k=1; i(全文...)

27

2007年5月27号

百度之星编程比赛 第四题 inurl 高级查询


#include
#include
#define maxn 9999
#define maxstrlen 258

int m,n;
char site[maxn][maxstrlen], inurl[maxn][maxstrlen];
char str1[maxstrlen], str2[maxstrlen];
char *pos;

int main()
{
int i,j,k;

memset(site,'\0',sizeof(site));
memset(inurl,'\0',sizeof(inurl));
scanf("%d", &n);
for(i=0; i(全文...)

27

2007年5月27号

百度之星编程比赛 第一题 百度时间


#include
#include
#include
#define MAX 25

int y,m,d;
char str[25];
int month[]={0,31,28,31,30,31,30,31,31,30,31,30,31};

int runnian(int yy, int flag)
{
int nian=0, i;
if (flag == 1) // after
{
for (i=2000; iyy; i+=flag)
{
if (i % 400 ==0 || (i % 4 == 0 && i % 100 != 0)) ++ nian;
}
}
return nian;
}

int daysafter()
{
... (全文...)

30

日志文件系统可以在系统发生断电或者其它系统故障时保证整体数据的完整性,Linux是目前支持日志文件系统最多的操作系统之一,本文重点研究了 Linux常用的日志文件系统:EXT3、ReiserFS、XFS和JFS日志技术,并采用标准的测试工具PostMark和 Bonnie++对它们进行了测试,给出了详细的性能分析,对Linux服务器应用具有重要的参考价值。

一、概述

所谓日志文件系统是在传统文件系统的基础上,加入文件系统更改的日志记录,它的设计思想是:跟踪记录文件系统的变化,并将变化内容记录入日志。日志文件系统在磁盘分区中保存有日志记录,写操作首先是对记录文件进行操作,若整个写操作由于 ... (全文...)

29

Memcached是danga.com(运营LiveJournal的技术团队)开发的一套分布式内 存对象缓存系统,用于在动态系统中减少数据库负载,提升性能。关于这个东西,相信很多人都用过,本文意在通过对memcached的实现及代码分析,获得 对这个出色的开源软件更深入的了解,并可以根据我们的需要对其进行更进一步的优化。末了将通过对BSM_Memcache扩展的分析,加深对 memcached的使用方式理解。

本文的部分内容可能需要比较好的数学基础作为辅助。

◎Memcached是什么

在 阐述这个问题之前,我们首先要清楚它“不是什么”。很多人把它当作和SharedMemory那种形式的存储载体来使用,虽然memcached使用了同 样的 ... (全文...)

23


(转 贴)这份材料是作者在帮美国MIT的William Stallings博士翻译站点的时候的一部分内容,感觉对国内的学生帮助会很大。写给大家,希望能对大家有所帮助。材料中涉及的所有内容版权归原作者所 有,收集信息的版权归William Stallings博士所有。
*******************************************************************************
关于一些计算数学基础性的材料

Math Refresher:(ftp://shell.shore.net/members/w/s/ws/Support/Math.pdf
这个概论覆盖了你在高中学得 ... (全文...)