01 箱子排序 1.1 什么是分配排序? 分配排序的基本思想:排序过程无须比较关键字,而是通过"分配"和"收集"过程来实现排序.它们的时间复杂度可达到线性阶:O(n)。 1.2 什么是箱子排序? 箱子排序是分配排序的一种,箱子排序也称桶排序(Bucket Sort ...
整理系统的时候发现了原来写的各种算法的总结,看了一下,大吃一惊,那时候的我还如此用心,具体的算法,有的已经模糊甚至忘记了,看的时候就把内容整理出来,顺便在熟悉一下,以后需要的时候就可以直接过来摘抄了。下面是总结的几个常用的排序算法: 插入排序 快速排序 冒泡排序 堆排序 计数排序 桶排序 可能大家对插入排序,快速排序,冒泡排序比较常用,在满足需求的时候也简单一些,下面逐一说一下每个算法的实现方式 ...
2014-04-22 15:46 2 2979 推荐指数:
01 箱子排序 1.1 什么是分配排序? 分配排序的基本思想:排序过程无须比较关键字,而是通过"分配"和"收集"过程来实现排序.它们的时间复杂度可达到线性阶:O(n)。 1.2 什么是箱子排序? 箱子排序是分配排序的一种,箱子排序也称桶排序(Bucket Sort ...
kNN算法原理 k最近邻(k-Nearest Neighbor)算法是比较简单的机器学习算法。它采用测量不同特征值之间的距离方法进行分类,思想很简单:如果一个样本在特征空间中的k个最近邻(最相似)的样本中大多数属于某一个类别,则该样本也属于这个类别。 kNN算法的步骤 第一阶段:确定k值(指 ...
基数排序 第11节 基数排序练习题 对于一个int数组,请编写一个基数排序算法,对数组元素排序。 给定一个int数组A及数组的大小n,请返回排序后的数组。保证元素均小于等于2000 ...
堆排序 第7节 堆排序练习题 对于一个int数组,请编写一个堆排序算法,对数组元素排序。 给定一个int数组A及数组的大小n,请返回排序后的数组。 测试样例: ...
排序问题一直是程序员工作与面试的重点,今天特意整理研究下与大家共勉!这里列出8种常见的经典排序,基本涵盖了所有的排序算法。 1.直接插入排序 我们经常会到这样一类排序问题:把新的数据插入到已经排好的数据列中。将第一个数和第二个数排序,然后构成一个有序序列将第三个数插入进去,构成一个 ...
1 前言 经过一段时间的编写,终于有出来一个稳定的版本,期间考虑了多种解决方案也偷偷学了下园子里面大神们的作品。 已经有很多的ORM框架,为什么要自己实现一个?我的原因是在遇到特殊需求时,可以在ORM中加入特定的代码。如 :根据数据库的字段长度和可空性做基本的数据验证,在ORM中解决数据修改 ...
之前介绍过几种排序算法,今天说一说堆排序算法。虽然堆排序在实践中不常用,经常被快速排序的效率打败,但堆排序的优点是与输入的数据无关,时间复杂度稳定在O(N*lgN),不像快排,最坏的情况下时间复杂度为O(N2)。 说明,了解堆排序的前提是要掌握二叉树的概念,可自行百度,本文 ...
【Title】[原]遗传算法Java实现源代码 【Date】2013-04-07 【Abstract】以前学习遗传算法时,用Java实现的遗传算法程序,现整理分享出来。 【Keywords】wintys、遗传、算法、algorithm、种群、基因、个体、进化、染色体、适应度 ...