摘要:问题:假设有十万个不同的文件,每个文件对应于一个MD5。这十万个MD5中,存在两个相同的MD5的概率是多大? 答:MD5是128位hash码(4个整数,每个整数4个字节)。我们假设它的计算结果是足够随机和足够分散的。因此,一个文件的MD5码,有2的128次方(用2e128表示,下面都用这种方式表示)个可能。进而我们知道,随意找出来的两个文件的MD5码相等的可能性,是2e128分之一。下面讨论中,我们用r来表示这个概率(即r=2e-128)。 假设这十万个MD5是一条条插入到数据库中的。第二个MD5插入时,它跟第一条重复的概率是r。第三条url插入时,它有可能跟第一条重复,也有可能跟第二条...
阅读全文
文章分类 - 数据结构&算法
常用数据结构及算法的积累学习
摘要:搜索某一定点名词的N层上位词及下位词业务逻辑层usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Xml.Linq;usingProI.Search.Entity;usingProI.Search.DAL;usingProI.Search.Utilities.Security;usingProI.Search.Utilities;usingSystem.IO;usingSystem.Configuration;namespaceProI.Search.BLL{publ
阅读全文
摘要:CSharp3.0中扩展方法,直接看代码:如何用呢?很简单:是不是很实用呀,这个来自一个名叫http://www.extensionmethod.net/ 网站.希望对您有帮助.
阅读全文
摘要:C# Sort Dictionary Valuesby Sam Allen - Updated January 14, 2010You want to sort your C# Dictionary by its values. The Dictionary has keys of any type, while the values can be sorted. Order the values...
阅读全文
摘要:.NET中的List<T>非常方便,但是很遗憾得是没有自带更方便的一些排序、查找函数。比如说,Sort()和Find()方法都包含在List<T>里,但果你想使用,你得自己写函数。这往往会让我们感到不爽。本文告诉你,其实这些Sort() Find()方法想要的都只是一个一句话delegate而已。 声明:本文讨论非LINQ的方法,适用于.NET2.0以上平台 主要讨论以下...
阅读全文
摘要:如果没有锁定且多个用户同时访问一个数据库,则当他们的事务同时使用相同的数据时可能会发生问题。并发问题包括: 丢失或覆盖更新。 未确认的相关性(脏读)。 不一致的分析(非重复读)。 幻像读。 丢失更新 当两个或多个事务选择同一行,然后基于最初选定的值更新该行时,会发生丢失更新问题。每个事务都不知道其它事务的存在。最后的更新将重写由其它事务所做的更新,这将导致数据丢失。 例如,两个编辑人员制作了同...
阅读全文
摘要:队列的特别是先进先出,包含入队出队两个基本操作:1 在入队过程中: 就是在队列的尾部添加数据,队列数据个数加一,尾指针后移。2 在出队过程中:就是在队列的头部取的数据后,然后删除该数据,头指针后移[代码]
阅读全文
摘要:栈的特别是后进先出(先进后出),包含出栈入栈两个基本操作: [代码]
阅读全文