各种常见的排序
要开始找工作了,把以前学的各种小知识复习一遍,以下是各种常见的排序的简单实现(冒泡排序,选择排序,插入排序,希尔排序,堆排序,快速排序,基数排序,桶排序),至于原理就不写出来了,代码比较简单,看一下就懂,再不行可以随意找本书或百度!
#include
using namespace std;
// 冒泡
void BubbleSort(int data[], int l...
分类:
编程语言 时间:
2015-08-04 17:15:35
阅读次数:
216
各位看官们,大家好,上一回中咱们说的是选择排序的例子,这一回咱们说的例子是:快速排序。闲话休
提,言归正转。让我们一起talk C栗子吧!
快速排序的原理:选定一个关键字,使容器分为两部分,一部分中的任何元素都关键字大,另一部分中的
任何元素都比关键字小。然后分别对这两个部分进行排序。
快速排序的实现步骤:
1.选定一个关键字,我在代码里直接使用容器头部元素为关...
分类:
编程语言 时间:
2015-08-04 00:46:22
阅读次数:
110
排序分内排序和外排序。内排序:指在排序期间数据对象全部存放在内存的排序。外排序:指在排序期间全部对象个数太多,不能同时存放在内存,必须根据排序过程的要求,不断在内、外存之间移动的排序。内排序的方法有许多种,按所用策略不同,可归纳为五类:插入排序、选择排序、交换排序、归并排序、分配排序和计数排序。插入排序主要包括直接插入排序,折半插入排序和希尔排序两种;选择排序主要包括直接选择排序和堆排序;交换排序...
分类:
编程语言 时间:
2015-08-03 22:53:18
阅读次数:
251
日常操作中常见的排序方法有:冒泡排序、快速排序、选择排序、插入排序、希尔排序等。冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素...
分类:
编程语言 时间:
2015-08-03 19:00:00
阅读次数:
153
一开始我的程序如下,一直出现错误,基本上肯定逻辑上没有错误,用C-free编译运行时排序根本就没用,后来改成后面的才有用!(一),有问题的程序#include<stdio.h>//#defineLEN10voidSort(intarry[]);intSelect_min(intarry[]);intmain(){inta[10],num=0;for(num=0;num&..
分类:
编程语言 时间:
2015-08-03 14:58:20
阅读次数:
111
这里对笔试面试最常涉及到的12种排序算法(包括插入排序、二分插入排序、希尔排序、选择排序、冒泡排序、鸡尾酒排序、快速排序、堆排序、归并排序、桶排序、计数排序和基数排序)进行了详解。每一种算法都有基本介绍、算法原理分析、图解/flash演示/视频演示、算法代码、笔试面试重点分析、笔试面试题等板块。
一、插入排序
1)算法简介
插入排序(Insertion Sort)的算法...
分类:
编程语言 时间:
2015-08-02 23:27:29
阅读次数:
289
各位看官们,大家好,上一回中咱们说的是希尔排序的例子,这一回咱们说的例子是:选择排序。闲话休
提,言归正转。让我们一起talk C栗子吧!
选择排序的原理是:从容器中选择一个最大或者最小的元素,把该元素放到新的容器中,等到容器中的所
有元素都被选择完后,新容器中存放的元素就是有序的。
在实现选择排序时,我通过交换元素的位置,充分利用了容器的空间,而没有创建新的容器,这...
分类:
编程语言 时间:
2015-08-02 20:04:02
阅读次数:
136
选择排序思路:不像冒泡排序那样每次找到比它小的就交换,而是要选择最小的,只交换一次就够了。 代码实现如下: public?void?sort(){
int?out,in,min;
for(out?=?0;?out?<?nElement;?out++){
mi...
分类:
其他好文 时间:
2015-08-02 16:58:30
阅读次数:
93
算法基本思想
选择排序方法的基本思想是:第i趟排序是从线性表后面的n-i+1个数据元素中选择一个值最小的数据元素,并将其与它n-i+1个数据元素中的第1个数据元素交换位置.经过这样的n-1趟排序以后,初始的线性表成......
分类:
编程语言 时间:
2015-08-01 15:42:44
阅读次数:
138