毕业后,由于工作中很少需要自已去写一些排序,所以那些排序算法都忘得差不多了,不过排序是最基础的算法,还是不能落下啦,于是找了一些资料,然后用Javascript实现了一些常用的算法,具体代码如下:
javascript常用排序算法实现
分类:
编程语言 时间:
2014-05-25 23:15:20
阅读次数:
303
出题:不同大小烙饼的排序问题:对于N块大小不一的烙饼,上下累在一起,由于一只手托着所有的饼,所以仅有一只手可以翻转饼(假设手足够大可以翻转任意块数的
饼),规定所有的大饼都出现在小饼的下面则说明已经排序,则最少需要翻转几次,才能达到大小有序的结果(改变饼的顺序只能整体翻转,不能相邻交换);分析:假设...
分类:
其他好文 时间:
2014-05-25 22:25:24
阅读次数:
324
当对象存在父节点、子节点时,通过特定的方式获取父节点、子节点数据构建树状结构或其它形式结构时,通常都会使用递归,如:一个公司有多个部门、每个部门下可能有多个小部门,小部门下面又有组….为了数据容易管理和维护,通过构建合适的表结构存储这些数据,以下示例以省市县为例学习了解递归:
1.创建存储省市县数据...
分类:
数据库 时间:
2014-05-25 19:16:01
阅读次数:
372
PS:刚开始我还不知道函数指针有什么用,因为一个函数当中,弄个指针岂不是很麻烦,调用的时候直接找到函数就行了,在弄个指针指向它岂不是多此一举,但是,这可能是一种封装的机制,把函数封装好,看不到局部函数,可能是一种保护机制吧。。或者在主函数内部直接定义指针,更一目了然。比如qsort啥的,排序的算法已...
分类:
其他好文 时间:
2014-05-25 18:42:53
阅读次数:
205
最近复习算法,感到有一丝丝忘记的困惑,赶紧记下来。。。一、分治法
分治法的思想就是“分而治之”,很明显就是将规模比较庞大、复杂的问题进行分治,然后得到多个小模块,最好这些小模块之间是独立的,如果这些小模块之间耦合性比较大的话,需要多次计算重复的问题,从而出现了冗余,这种情况下,可以利用动态规划法.....
分类:
编程语言 时间:
2014-05-25 14:08:40
阅读次数:
400
在写这篇文章之前,我曾反复思量关于加密的叫法是否准确,更为严格来说,应该是密码散列-将数据(如中英文字母、特殊字符)通过复杂的算法转换为另一种固定长度的值。QCryptographicHash类
在Qt中,QCryptographicHash类提供了生成密码散列的方法。该类可以用于生成二进...
分类:
其他好文 时间:
2014-05-25 12:37:04
阅读次数:
287
遗传算法的手工模拟计算示例
为更好地理解遗传算法的运算过程,下面用手工计算来简单地模拟遗传算法的各个主要执行步骤。 例:求下述二元函数的最大值: (1) 个体编码
遗传算法的运算对象是表示个体的符号串,所以必须把变量 x1, x2 编码为一种符号串。本题中,用无符号二进制整数来表示。因 x1, x2...
分类:
其他好文 时间:
2014-05-25 12:16:38
阅读次数:
250
数列$\begin{Bmatrix} {x}_{n} \end{Bmatrix}$满足如下定义:
$$a>0,\quad b>0; \qquad {x}_{1}=a,\quad{x}_{2}=b ;\qquad
{x}_{n+2}=2+\cfrac{1}{{x}_{n+1}^{2}}+\cfrac{...
分类:
其他好文 时间:
2014-05-25 11:24:02
阅读次数:
260
寒假学的两个算法,普里姆,克鲁斯卡尔终于弄明白了,可以发总结了
先说说普里姆,它的本质就是贪心,先从任意一个点开始,找到最短边,然后不断更新更新len数组,然后再选取最短边并标记经过的点,直到所有的点被标记,或者说已经选好了n-1条边。
克鲁斯卡尔,一个排序一个并查集只是表面,实质还是贪心,只不过普里斯是任选一个点选最短路,而克鲁斯卡尔是看全局,全体边排序,当然,因为排序,导致时间复杂度不容易降下来。
拿SDUTOJ2144为例,代码如下,可做模板...
分类:
其他好文 时间:
2014-05-25 11:10:47
阅读次数:
256
理解下SSH登录的过程:1、建立目的端口为22的TCP连接2、协商SSH版本3、协商密钥和算法4、会话建立下面为server端的详细配置步骤:1、创建本地RSA密钥对rsalocal-key-paircreat//产生RSA本地密钥对2、配置vty界面支持的登录协议user-interfacevty04authentication-modeaaa//验证..
分类:
其他好文 时间:
2014-05-25 06:06:21
阅读次数:
353