
大数据算法
文章平均质量分 62
稳健的不高冷的强哥
这个作者很懒,什么都没留下…
展开
-
五、距离矩阵最大值(亚线性时间近似算法)
实验时间:11.23Puzzle 距离矩阵最大值输入:m点的平面图,任意两点之间的距离存储在矩阵D中,即点i到点j的距离为Dij输入大小时n=m^2输出:该图的直径即距离最大的Dij要求:运行时间o(n)提示:最大的Dij是图的直径点之间的距离对称且满足三角不等式)平面图示例:距离矩阵示例:简述算法过程:随机选取k(k<<m)行,找到k行中的距离最大值即可。实验代码: srand(time(NULL)); d原创 2021-11-25 12:05:09 · 818 阅读 · 0 评论 -
四、Morris、递归实现二叉树前、中、后序遍历
实验时间:11.10目录生成完全二叉树Morris算法实现morris遍历介绍morris遍历的实现原则morris遍历的实质简述算法过程递归实现实验结果(含时间、空间、输出结果):源代码生成完全二叉树使用队列生成即可。//利用队列,生成的完全二叉树void CreateTreeNode(TreeNode *root, int Num) { queue<TreeNode *> Q; Q.push(root);//根结点入队原创 2021-11-21 19:46:23 · 474 阅读 · 0 评论 -
三、最大间隙(线性时间算法)
实验时间:10.28目录Puzzle 最大间隙问题鸽笼原理源代码:(只需要修改这几个参数即可)Puzzle 最大间隙问题给定 n 个无序实数 ,求这 n 个实数在实轴上相邻 2 个数之间的最大差值,要求线性的时间算法。例如: 4 11 1 9 20 2 17 输出: 6首先想到的就是排序,然后求差值,但是我目前已知的最快的排序算法,排序时间复杂度最少也要O(nlongn),因此只能使用别的巧妙算法了。鸽笼原理拓展鸽笼原理(抽屉原理),即为桶排序,在输...原创 2021-11-09 23:26:39 · 1075 阅读 · 0 评论 -
二、频繁元素最多次数、极大是否有序(附源码)
实验时间:10.14目录Puzzle 1:Frequency MomentsPuzzle 2:a maximal arrayis sorted or not二分查找(仅对有序数组查找有效)源代码:(只需要修改这几个参数即可)Puzzle 1:Frequency Moments频繁元素从数据流中获取出现次数最多的三个元素要求:空间复杂度为O(k)简述算法过程:continue代表执行下一次循环将若干数据,按顺序放入长度为K的数组,直至全部填满,统计K个不..原创 2021-11-02 15:47:48 · 190 阅读 · 0 评论 -
一、缺失值、随机采样、中位数(附源码)
时间:2021.9.30Puzzle 1:Finding a missing value简述算法过程:已知a1--an,是不同的,且从1到n+1;因此,将1到n逐个求和;再减去全部的输入数据;剩下的一个数字 ,即为缺失值。实验代码://puzzle 1int Solution1(Env& env) { //env.s代表数据 起始的地方 int sInt = stoi(env.s), sum = 0; for (size_t原创 2021-11-02 15:08:51 · 364 阅读 · 0 评论