码迷,mamicode.com
首页 >  
搜索关键字:排序算法    ( 6430个结果
几种常用排序算法的python实现
1:快速排序思想:任意选取一个数据(通常选用数组的第一个数)作为关键数据,然后将所有比它小的数都放到它前面,所有比它大的数都放到它后面,这个过程称为一趟快速排序。一趟快速排序的算法是:1)设置两个变量i、j,排序开始的时候:i=0,j=N-1;2)以第一个数组元素作为关键数据,赋值给key,即key...
分类:编程语言   时间:2014-07-16 19:43:40    阅读次数:202
常用查找排序算法
1.折半查找算法:对于一个已排好序的数组,若要查找某元素是否属于数组中,则可以用这种算法。返回找到的元素在数组中的下标,找不到则返回-1#include #define LEN 8int a[LEN] = { 1, 3, 3, 3, 4, 5, 6, 7 };int binarysearch(int...
分类:其他好文   时间:2014-07-16 19:34:22    阅读次数:135
排序算法系列——堆排序
记录学习点滴,菜鸟成长记堆排序引入了另一种算法设计技巧:使用一种我们称之为“堆”的数据结构来进行数据管理。堆排序算是真正意义上的利用数据结构来求解数组排序的方法。“插入排序”和“归并排序”可以看做是一种“计算机体力活”,体现的思想更多的是去模拟最简单的人类思维,比如插入排序过程中的比较,归并中子问题...
分类:其他好文   时间:2014-07-14 09:42:06    阅读次数:235
排序算法系列——快速排序
记录学习点滴快速排序算法是一种很有趣的算法,短小精悍,性能强劲,对于大部分情况都可以胜任,但对极端环境难以应付。快速排序我理解为:这是一个“以自我为中心的”+“分治法”思想的算法。分治法不必多说,化繁为简,那就是逐个击破。那什么是“以自我为中心”?顾名思义,就是每次都一个“我”,每个人都要围绕“我”...
分类:其他好文   时间:2014-07-14 08:25:25    阅读次数:263
用Java来写常见的排序算法
随着校招的临近 算法是校招中很重要的一个部分 总结了常见几种排序算法,各种算法的时间复杂度和空间复杂度大家也需要多了解下 package com.huwei.sort;/** * 各种排序算法 * * @author huwei * */public class Sort { public...
分类:编程语言   时间:2014-07-14 00:59:09    阅读次数:231
快速排序算法详解与实现
快速排序是一种分治排序算法。广泛认为它是解决一般问题的最佳排序算法。同插入排序一样,快速排序也属于比较排序的一种,而且不需要额外的存储空间。在处理中到大型数据集时,快速排序是一个比较好的选择。 由于快速排序是一种分治算法,因此可以用分治法的思想将排序分为三个步骤 1.分:设定一个分割值将数据分为两部分。 2.治:分别在两部分用递归的方式继续使用快速排序法。 3.合:对分割部分排序排序直至完...
分类:其他好文   时间:2014-07-13 15:35:44    阅读次数:214
初探STL之算法
算法 STL算法部分主要由头文件,,组成。要使用 STL中的算法函数必须包含头文件,对于数值算法须包含,中则定义了一些模板类,用来声明函数对象。     STL中算法大致分为四类:         1、非可变序列算法:指不直接修改其所操作的容器内容的算法。         2、可变序列算法:指可以修改它们所操作的容器内容的算法。         3、排序算法:包括对序列进行排序和合并的算...
分类:其他好文   时间:2014-07-12 18:33:48    阅读次数:211
C++: quick sort(快排序)
到目前为止, 我们已经学习到了插入排序, 冒泡排序, 选择排序(selection)。 这些排序算法都是comparision based sorting algorithms(即涉及到元素大小的比较来决定元素的先后顺序)。 而且算法的时间复杂度上均为O(n^2)。但是comparision based 的排序算法远非这几个算法。 而且可以通过利用其它的一些手段(例如divide and conq...
分类:编程语言   时间:2014-07-11 08:29:25    阅读次数:441
计数排序
前言 一般的排序都是需要进行关键字的比较的。有没有不需要比较的的呢?有的,计数排序就是其中一种。 计数排序 假设输入序列都是0到k之间的整数,则可使用计数排序。具体操作是这样的:创建一个同类型同等大小的临时数组temp,用于备份输入序列。创建一个整型大小为k的数组count,用于统计序列中各元素出现的次数。接下来只需把备份序列从大到小放回原数组即可。一个示例图:...
分类:其他好文   时间:2014-07-10 22:59:17    阅读次数:252
排序算法的体验游戏
游戏规则:制作 n 张卡片,印上随机的数字,随机的发给排成一行的 n 个游戏参与者,相邻的人可以互看卡片比较大小,必要时交换位置,最后按手持卡片中数字的顺序排好顺序。要做的基本操作只是比较、交换位置,是多人同时进行的。在这里,每个人,就是一个处理器,就是一个Agent。为增加游戏的趣味性,由两组或多组人同时做这一件事,最快者获胜。要在课堂上玩,简便的奖惩手段,由赢者刮输者的鼻子。 还可以让这些人坐在教室中的同一列座位上,坐着的人不动,前后相邻的人交换卡片。一样的道理。 这个游戏前,不必讲并行算法的思想,可以...
分类:其他好文   时间:2014-07-10 22:29:02    阅读次数:291
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!