- 博客(4)
- 资源 (2)
- 收藏
- 关注
原创 并查集的实现及例析
并查集是一种树型的数据结构,用于处理一些不相交集合的合并及查询。 eg: (1) 在数组中,存在几个负数就有几棵树; (2)每个根节点的绝对值表示这棵树中有几个节点; (3)大于等于0的节点的值表示这个节点对应的根节点的位置; 并查集的代码实现: #include using namespace std; class UnionFindSet { private: int* _a;
2016-11-28 14:36:35 221
原创 大数据之数据结构例析(一)
1.给一个超过100G大小的log file, log中存着IP地址,设计算法找到出现次数最多的IP地址? 思路:首先,对于一个超过100G大小的Log File,现在来说肯定是进入不了内存的,要想找出在这个文件中出现次数最多的IP,必须对于这个文件进行切分; (1)先将这超过100G大小的Log File 切分成 100个文件; (2)使用字符串哈希算法,对于文件中的字符串进行计算,让相同
2016-11-09 20:31:16 1106
原创 大数据之数据结构例析(二)
1.给两个文件,分别有100亿个query,我们只有1G内存,如何找到两个文件交集?分别给出精确算法和近似算法 精确的算法:对于这两个文件,分别进行切分;将文件一切分为100份,用合适的散列函数将数据进行处理,让经过散列函数后结构相同的数进入同一个文件,并且对文件进行编号;文件二使用和文件一一样的散列函数并进行同样的操作; (1)分别将文件一和文件二切分的编号相同的文件加载进入内存,对比两个文
2016-11-09 17:28:33 770
原创 哈希表的相关内容及实现
一.哈希表也称散列表,是基于高速存取的角度设计的,采用“以空间换时间”的方法; 哈希表是依据关键值key进行存储和查找的数据结构:是通过关键码值映射按照一定的函数(散列函数)到表中的一个位置来进行访问的,从而进行快速的查找和插入; 二.构造哈希表的几种方法 1. 直接定址法--取关键字的某个线性函数为散列地址,Hash(Key)= Key 或Hash(Key)= A*Key + B,A、B为
2016-11-02 21:24:28 476
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人