摘要:
最近要排序一个比较大的文件,大概5G左右。文件中每行由两部分组成:“id DocNo”。其中id是一个数字,DocNo是一个字符串。我需要把这个大文件按照DocNo进行排序(字典序)。 要把这个文件加入内存是不太可能的,所以必须把它分解为小文件,然后把小文件加入到内存中进行排序。然后再把小文件组合起来。这有点类似于归并排序,不过需要注意的是,这里的归并是对文件的归并。 分文件也有几种策略。第一种可... 阅读全文
2010年8月28日
2010年8月15日
摘要:
AAAIAICIAIRSAPWebCIDRCIKMDaWaKECIRECMLICADLICDEICDMICMLICWLJCDLKDDNIPSPKDDPKDDPODSRIAOSDMSIGIRSIGKDDSIGMODTRECVLDBWAIMWISMWSDMWWW 阅读全文
2010年8月13日
摘要:
代码 public static int GooglePR(string url) { string checksum = GoogleCH(url); string query = string.Format("http://www.google.com/search?client=navclient-auto&ch={0}... 阅读全文
2010年8月6日
摘要:
Windows环境下,有时候必须一直开着某些窗口,但如果窗口一多,有的时候看着心烦。好在Windows api中存在隐藏窗口的方法,为了学习MFC编程,我编写了一个隐藏窗口的工具。 工具中用到的主要api如下:EnumWindows:EnumWindows(EnumWindowsProc, 0),通过该函数来遍历所有的窗口,其中EnumWindowsProc是一个回调函数,如下:代码BOOL CA... 阅读全文
2010年7月29日
摘要:
给定一个数组,要求你把数组的顺序随机打乱,然后输出,主要是要保证效率。 这个算法其实简单,首先从所有元素中选取一个数与第一个进行交换,然后在2至n中选择一个元素与第二个交换,直到最后一个元素。 这样能确保每个元素在每个位置的概率都是1/n。代码如下: #include #include #include // 随机打乱一个数组 void random(int a[], int ... 阅读全文
摘要:
#pragma once #include using namespace std; class bit_vector { public: bit_vector(int); ~bit_vector(void); int get_bit(int); void set_bit(int); void clear_bit(int); void reverse_bit(int); st... 阅读全文
2010年7月20日
摘要:
1. 给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url? 方案1:可以估计每个文件安的大小为50G×64=320G,远远大于内存限制的4G。所以不可能将其完全加载到内存中处理。考虑采取分而治之的方法。 s 遍历文件a,对每个url求取,然后根据所取得的值将url分别存储到1000个小文件(记为)中。这样每个小文件的大约为300M。... 阅读全文
2010年7月16日
摘要:
数组的最大子序列问题:给定一个数组,其中元素有正,也有负,找去其中一个连续子序列,使和最大。 这个问题可以可以动态规划的思想解决: 设b[i]:表示以第i个元素a[i]结尾的最大子序列,那么显然 b[i+1]=b[i]>0?b[i]+a[i+1] 基于这一点很快就可以完成如下代码: int maxSubArray(int ar[], int n){ int max = ar[... 阅读全文
2010年7月14日
摘要:
1. Download it from here (now here). The beta has been closed and Adobe plans to release a 64-bit linux version soon. In the meanwhile you can get the latest version here (the md5 checksum is 5aa96... 阅读全文
2010年7月11日
摘要:
HITS算法是重要的链接分析算法。很多书上是用矩阵的形式来描述HITS算法: 其中,为邻接矩阵,和分别为权威值和中心值,幂法迭代算法如下: 但是为了空间的考虑,我们在存储Web图的时候,一般都是用的邻接矩阵表示。 经过分析发现,一个页面的权威值,其实是指向它的页面的中心值之和;一个页面的中心值,是它指向的页面的权威值的过程。这是一个相互加强的过程。 下面是用Java实现的代码... 阅读全文
2010年6月30日
摘要:
有的时候,脖子左边疼,有的时候,脖子右边疼,一直很困扰,不知道是什么原因,下面是我找到一些比较权威一些的论文。坐姿不对脖子疼第四军医大学唐都医院教授 王化忠 刘永平 杜精锐 整理 冯先生脖子右侧疼痛已经 3 年多了。他以前进行过治疗,但一直未见显著效果。最近,他又去医院就诊,医生告诉他,他的疼痛与看电视和平时工作时的姿势有关。 冯先生脖子右侧疼痛不适表现为麻木酸疼,扭转不利,手按疼... 阅读全文
2010年6月29日
摘要:
实验室收集到的一些老师的邮箱: 杨波 byang@scau.edu.cn 孙爱东 sunad2002@163.com 宋鸿陟 hz.song@scau.edu.cn 张明武 zhangmw@scau.edu.cn 祝胜林 zhusl@scau.edu.cn 李德玉 lidy@sxu.edu.cn 梁吉业 ljy@sxu.... 阅读全文
2010年6月7日
摘要:
算法导论 代码: #include void extened_euclid(int a, int b, int* d, int* x, int* y){ int dp, xp, yp; if (b == 0) { *d = a; *x = 1; *y = 0; } else { extened_euclid(b, a%b, &dp, &xp, &yp); *d = dp;... 阅读全文
2010年6月6日
摘要:
先抛一块砖,以后慢慢填充吧!To the best of our knowledge 阅读全文
2010年5月29日
摘要:
using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace 欧几里德算法CSharp{ class Program { static int gcd(int a, int b) { if (b == 0) ... 阅读全文
2010年5月28日
摘要:
装配线问题,问题详见算法导论(第二版)中文版地193页(英文版323页)。 C#实现如下: using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace 动态规划之装配线问题{ /// /// 动态规划之转配线问题,用递归实现,但记录中间结果 //... 阅读全文
2010年5月25日
摘要:
新版的firefox,右键菜单第一个是在新窗口中打卡链接,这个很不方便,想把在新选项卡中打开链接提前。 在网上查了一下,都推荐Menu edit,其实这不是很方便,至少要多装一个插件,另外这个插件是在你打开菜单的时候进行替换的,这很卡,有点闪的感觉,这也不符合diy的精神。 后来网上查了查发现,firefox的很多ui都封装在browser.jar这个文件中,可以通过修改这个文件中... 阅读全文
2010年5月18日
摘要:
Win7没有了快速访问,新增加了锁定到任务栏的功能。经过我的研究发现了,几个与这个东西有关的几个东西。 首先一个就是文件夹“C:UsersYou WangAppDataRoamingMicrosoftInternet ExplorerQuick LaunchUserPinnedTaskBar”,其中“You Wang”是我的用户名。在这个文件夹下存储你通过锁定操作建立的快捷方式。注意在解锁... 阅读全文
2010年5月3日
摘要:
WhiteSmoke是一个英文写作语法检查,写作风格检查的工具,是写英文文章和论文的好帮手。但是该软件是一个收费的软件,提供7天的试用期,之后就要收费了。该软件是一个在线软件,有很多破解者,最终都已失败告终。 本人也是一个软件破解爱好者,不过水平不怎么的,一直也想破解到这个软件,但是最后也失败了。后来我观察了这个软件的注册表项,通过仔细分析,发现删除某个注册表项就可以重新试用。在运行该软件后会... 阅读全文
2010年4月27日
摘要:
law实验室提供很多的webgraph,但是没有提供相应的hostgraph。所谓hostgraph就是将webgraph中在同一站点的url合成一个结点。注意到这些webgraph中在同一个站点中的url是连续的,这对我们进行合并提供了很大的方便性。本来想用java来写,但是考虑到java的io效率在windows下比较差,就用C#了。我用IKVM将webgraph.jar和其依赖的jar文件打... 阅读全文