随笔分类 - 算法&数据结构
摘要:什么是bitmap?来自于《编程珠玑》。所谓的Bit-map就是用一个bit位来标记某个元素对应的Value, 而Key即是该元素。由于采用了Bit为单位来存储数据,因此在存储空间方面,可以大大节省。举个例子。我们要存储3,4,5,6,7这几个元素。如果用int[]来存储的话,我们需要5*32bit...
阅读全文
摘要:什么是外排序?外排序(External sorting)是指能够处理极大量数据的排序算法。通常来说,外排序处理的数据不能一次装入内存。(摘自百度)再简单点来说。比如我们要对10亿个数进行排序。如果用int[]来存储这10亿个数的话,我们需要3*1000000000/8/1024/1024/1024≈...
阅读全文
摘要:网上看了很多有关的文章,感觉讲得都不够明了(原谅没读过书的我,这些基础知识都是看博客自学的)。所以今天决定来讲讲哈希表哈希表又称散列表,C#里最经典的就是Hashtable和Dictionary。特别是后面的Dictionary,大家都用得非常多。他们是以键值对的形式存储的,通过key就可以查到va...
阅读全文
摘要:‘算法空间复杂度’,别以为这个东西多么高大上,我保证你看完这篇文章就能明白。最近在啃算法,发现非常有趣。在我学习的过程中发现了一个问题,那就是空间复杂度的问题,它绝对是效率的杀手。关于空间复杂度的介绍(摘自百度)空间复杂度(Space Complexity)是对一个算法在运行过程中临时占用存储空间大...
阅读全文