算法
文章平均质量分 87
unicxitoiv
这个作者很懒,什么都没留下…
展开
-
计数排序
计数排序基本借鉴与<<算法导论>>第三版计数排序的基本思想 对于每一个元素x,确定小于x的元素个数。利用这一信息,就可以直接把x放在输出数组中的位置上了。例如,如果有17个元素小于x,则x就应该在第18个输出位置上。当有几个元素相同时,这一方案要略做修改。 代码#include <iostream>#include <cstring>using namespace std;原创 2017-03-13 17:53:46 · 355 阅读 · 0 评论 -
堆排序
堆排序堆排序不同于其他排序算法,它的时间复杂度为O(n lgn),与并归排序相同。但是,不同于并归排序的是,空间复杂度为O(1)。堆排序具有空间原址性。堆一种完全二叉树.它又被分为大根(顶)堆和小根(顶)堆.实际以数组存储但是,你可以将一个堆看成一个完全二叉树大顶堆 若想从小到大排序就需要构建大顶堆,否则构建小顶堆。 顺序储存 由图可以清楚的看出大顶堆的性质——一颗根节点大于其余节点的完原创 2017-04-26 13:39:31 · 331 阅读 · 0 评论 -
编写浏览器迷宫游戏的外挂(误..
背景 xiyoulinux兴趣小组 的免试题蛮有意思的,第三关要求不仅要有脑洞,还是得有代码编写的能力的. 第三关入口打开就是这个样子了… 迷宫这么大,时间肯定不够. 可以,写代码吧…用程序跑回溯法一说到走迷宫第一个想到就是回溯法了.(先解决问题,时间还是不够那再想其他办法) 回溯算法实际上一个类似枚举的搜索尝试过程,主要是在搜索尝试过程中寻找问题的...原创 2018-04-30 20:43:46 · 393 阅读 · 0 评论 -
c++ Meta Templates & Haskell(Functional Programming) 和编译期插排
C++ Meta Templates ProgrammingC++ 果然是一个语言联邦…Hello Worldtemplate <int n>struct add { static constexpr int value = add<n - 1>::value + n;};template <>struct add<1> { st...原创 2019-05-18 18:05:40 · 311 阅读 · 1 评论