在网上论坛上看了很多例子,快速排序算法是各公司面试笔试常考的一种算法,并且在平时的实际应用中表现形式和实现过程也是非常优秀,笔者认为快速排序法的思想就是基于冒泡排序法,冒泡排序法是将相邻元素进行比较来进行元素的交换排序,而快速排序法则通过确定一个基准元素,将比它大或者小的的元素分别归为一组从而进行递归排序,这里具体的实现结果有点像二分法的概念。在这里借用一张网上的图片来进一步解释...
分类:
编程语言 时间:
2016-05-12 20:49:20
阅读次数:
162
0.基本概念 记录:待排序的项目 关键词:决定排序结果 稳定性:相同关键词的记录保持原来的相对次序 1.1插入排序(Insertion Sort) 算法思想 一种简单直观的排序算法,工作原理是通过构建有序序列:对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。 算法描述 具体算法描述如... ...
分类:
编程语言 时间:
2016-04-08 21:50:51
阅读次数:
483
没有过多的说明,只为将来可能会用到的日子,能拿来做参考。1、冒泡(Bubble) 7 5 2 1 5 9 5 7 2 1 5 9 5 2 7 1 5 9 5 2 1 7 5 9 5 2 1 5 7 9 2 5 1 5 7 9 2 1 5 5 7 9 2 1 5 5 7 9 1 2 5 5 7 9 ....
分类:
编程语言 时间:
2016-01-20 13:22:16
阅读次数:
221
插入排序直接插入排序的基本思想是:顺序地把待排序的数据元素按其值的大小插入到已排序数据元素子集合的适当位置。子集合的数据元素个数从只有一个数据元素开始逐次增大。当子集合大小最终和集合大小相同时排序完毕。//插入排序算法
publicclassInsertSortDemo{
publicstatic..
分类:
编程语言 时间:
2015-09-13 07:12:12
阅读次数:
231
PHP的四种基本排序算法为:冒泡排序、插入排序、选择排序和快速排序。下面是我整理出来的算法代码:1. 冒泡排序:思路:对数组进行多轮冒泡,每一轮对数组中的元素两两比较,调整位置,冒出一个最大的数来。//简单版:function bubbleSort($arr){ $n = count($arr); ...
分类:
编程语言 时间:
2015-09-02 13:19:17
阅读次数:
151
各种基本排序算法的总结本文是为了加深自己对各种算法的理解,部分摘自维基百科,这里主要介绍较为常用的排序方法,一些生僻的算法不做介绍。.总结各种算法之前,现介绍下几个概念:1、稳定度:稳定排序算法会依照相等的关键(换言之就是值)维持纪录的相对次序。也就是一个排序算法是稳定的,就是当有两个有相等关键的纪...
分类:
编程语言 时间:
2015-08-18 15:39:32
阅读次数:
165
1.插入排序插入排序时最容易理解的排序方法,个人总结有三个关键点:1. 需要将处理的元素暂时存储起来2. j变量的范围控制3. 插入值与j变量控制范围中元素大小的比较相关代码: 1 //插入排序 2 template void sort(T* array, int n) 3 { 4 for ...
分类:
编程语言 时间:
2015-07-18 19:54:06
阅读次数:
124
排序有关博客:http://www.cnblogs.com/vamei/archive/2013/03/12/2948847.htmlhttp://blog.csdn.net/morewindows/article/details/6665714排序动画(推荐):http://www.sorting...
分类:
编程语言 时间:
2015-07-08 22:17:01
阅读次数:
180
概述排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。我们这里说说八大排序就是内部排序。当n较大,则应采用时间复杂度为O(nlog2n)的排序方法:快速排序、堆排序或归并排序序。 快速排序:是目前基于比较...
分类:
编程语言 时间:
2015-07-01 09:55:58
阅读次数:
274