随笔- 34
文章- 0
评论- 2
阅读-
71517
随笔分类 - 算法&数据结构
MapReduce实现Apriori算法
摘要:Apiroi算法在Hadoop MapReduce上的实现 输入格式: 一行为一个Bucket 输出格式: <item1,item2,...itemK, frequency> 代码:
阅读全文
最小生成树 HDU1301 (kuskal & prim)
摘要:Kruskal:1.边排序,2.按边从小到大连接森林至树 3.并查集 prim:类似与Dijkstra,把节点分为已扩展和未扩展,为扩展节点中权值最小的节点为下一个扩展节点,Dijkstra中为扩展节点的权值为到起点的最短路径,Prim为到已生成树的最短距离,扩展后更新为扩展节点权值,使用最小堆 O
阅读全文
排序
摘要:/***************************************************** *author:chen xin *email:cx2pirate@gmail.com *date:2014.09.08 * **************************************************/ #include #include #...
阅读全文
最短路径HDU3790(Dijkstra)
摘要:准备考研,荒废了好多东西,希望做了正确的决定
阅读全文
HDU2138(Miller-Rabin素数检测)
摘要:最近在看RSA,找到一个一个大素数是好多加密算法的关键一步,而大素数无法直接构造,一般情况下都是生成一个随机数然后判断是不是素数。判断是否是素数的方法有好多,有的能够准确判断,比如可以直接因式分解(RSA的安全性就基于这是困难的),速度稍微快一点的对素数又有特殊要求,而Miller-Rabin素数检
阅读全文
B树
摘要:1 /************************************************ 2 *作者:陈新 3 *时间:2014 6.3 4 *邮箱:cx2pirate@gmail.com 5 * ***************************************...
阅读全文
红黑树与二叉树
摘要:linux内核中有个rbtree,stl源码中也有,标准stl中的map和set都只是包装了下rbtree全部代码:点击打开链接 1 /************************************************************* 2 * 作者:陈新 3 * 邮...
阅读全文
大整数运算
摘要://(HDU1134,HDU1261)#ifndef HEADER_BIGINT #define HEADER_BIGINT #include #include #include using namespace std; class BigInt{ public: BigInt(); BigInt(int smallNum); B...
阅读全文
并查集(POJ1182)
摘要:链接:http://poj.org/problem?id=1182 定义一种关系R(x,y),x > y 时 R(x,y) = 2;x = y 时 R(x,y)= 1;x < y 时 R(x,y) = 0 则R(x,y)有如下运算法则: R(x,y) = (R(x,u) - R(y,u) + 4)
阅读全文
推箱子游戏
摘要:推箱子 1 /************************************************************** 2 作者:陈新 3 邮箱:cx2pirate@gmail.com 4 用途:hdu1254_2 5 时间ﺿ014.3.31 21:11 6 测试ﺿ0447364
阅读全文
离散傅里叶变换计算乘法
摘要:利用傅立叶变换可以把大数乘法时间控制在:O(n*lgn),首先把整数a1a2...an看作多项式f(x) = a1x + a2x^2 + .... an x^n(其中x取10),把整数乘法转换为多项式乘法,多项式一般乘法也要O(n*n)时间,而多项式点值表示法的乘法只需要O(n)的时间,于是就有了条
阅读全文
八数码
摘要:A*搜索是最佳优先搜索最广为人知的形式,是一种有信息搜索策略,它的核心是一个估值函数:f(n)=g(n)+h(n),g(n)是从起始点到节点n的路径耗散,而h(n)是从节点n到目标节点的最低耗散路径的估计耗散值,因此f(n)=经过节点n的最低耗散解的估计耗散。 完备性证明:A*搜索能够找到最低耗散解
阅读全文
传教士与野人
摘要:仅供学习使用,还请大神多多指点! 传教士与野人 问题描述:M个传教士和N个野人在河的一边,还有一条能载一个人或者两个人的船。找到一个办法让所有的人都渡到河另一岸,要求在任何地方野人数都不能多于传教士的人数(可以只有野人没有传教士)。 问题形式化:1、状态:每个状态有河两岸A与B对应的传教士与野人数和
阅读全文
计算几何
摘要:把草稿纸上的集合体转变成代码其中还是有很多细节问题需要注意的,《算法导论》主要介绍了叉积在几何学中的应用。向量的两个运算点积与叉积,点积:ab = |a||b|cos 叉积:a x b = |a||b|sin,由于叉积的形式与面积公式相似,也常用于计算多边形的面积,同时如果a x b > 0则a 向
阅读全文
字符串匹配自动机
摘要:在长度为n的数组T[n]中查找一个长度为m的数组P[m],如果用朴素字符串匹配方法要用O(mn)的时间,用自动机匹配要O(n)的时间,但一般的自动机要O(ml)的时间(l为字符集的宽度),而KMP只要O(m)的预处理时间。 其实最早接触字符串匹配自动机应该是在数字电路中的序列检测器那时候,序列检测器
阅读全文