
算法
过劳肥码农
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
堆排序
堆排序与快速排序,归并排序一样都是时间复杂度为O(N*logN)的几种常见排序方法。学习堆排序前,先讲解下什么是数据结构中的二叉堆。二叉堆的定义二叉堆是完全二叉树或者是近似完全二叉树。二叉堆满足二个特性:1.父结点的键值总是大于或等于(小于或等于)任何一个子节点的键值。2.每个结点的左子树和右子树都是一个二叉堆(都是最大堆或最小堆)。当父结点的键值总转载 2017-02-04 15:47:22 · 309 阅读 · 0 评论 -
归并排序
归并排序(Merge)是将两个(或两个以上)有序表合并成一个新的有序表,即把待排序序列分为若干个子序列,每个子序列是有序的。然后再把有序子序列合并为整体有序序列。归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。 将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合转载 2017-02-04 17:40:51 · 316 阅读 · 0 评论 -
十大算法.(只看懂了一部分,留下来慢慢体会吧)
快速排序算法快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见。事实上,快速排序通常明显比其他Ο(n log n) 算法更快,因为它的内部循环(inner loop)可以在大部分的架构上很有效率地被实现出来。快速排序使用分治法(Divide and conquer)策略来把一转载 2017-02-05 10:48:23 · 1201 阅读 · 0 评论 -
快速排序算法
一言不合我就贴代码:package arithmetic;/**快速排序 * @author Administrator * */public class QuickSortDemo { public static void quickSort(int []arr,int left,int right ){ if (left>right) { return;原创 2017-01-21 15:31:56 · 570 阅读 · 0 评论 -
随机均衡分配,抽奖的一个随机算法
最近在写一个随机的均衡的一个抽奖的算法,要保证不能连续抽中, 要均衡一点,不能超过指定的中奖数,当然也不能小于,必须是这个中奖数字,下面是我写的一个,, 0表示不中,1表示中,就这样生成一串奖池..个人数学比较差,,也没啥好的方式,所以贴出来求大家指点指点.方法中的 c参数是奖池的总数量 p是这次奖池里面会抽中多少次.public void in原创 2017-12-17 23:47:19 · 5020 阅读 · 0 评论 -
匹配字符串相似度算法(各个语言版本)
原文链接:https://blog.youkuaiyun.com/baidu_23086307/article/details/53020566 C++版#include <iostream>#include <vector>#include <string>using namespace std;//算法int ldistance(const s...转载 2018-07-20 14:28:29 · 4216 阅读 · 0 评论