//方法一:
#include<stdio.h>
#include<string.h>
voidsort(char*arr[],intn)
{
char*tmp;
inti,j,k;
for(i=0;i<n-1;i++)//选择排序
{
k=i;
for(j=i+1;j<n;j++)
{
if(strcmp(arr[k],arr[j])>0)
{
k=j;
}
}
tmp=arr[i];
arr[i]=arr[k];
arr[k]=tmp;
}
}
v..
分类:
编程语言 时间:
2015-11-07 19:11:55
阅读次数:
265
分类 :(一)插入类排序:直接插入排序,折半插入排序,希尔排序(二)交换类排序:冒泡排序,快速排序(三)选择类排序:简单选择排序,树形选择排序,堆排序(四)归并排序:归并排序(五)分配类排序二、插入类排序:(一)思想:在一个已经排好序的序列中,将未被排进的元素按照原先的规定插入到指定位置。(二)分类...
分类:
编程语言 时间:
2015-11-07 12:15:40
阅读次数:
395
day04在数组中,数据名称.length用于获取此数组的元素个数。练习1:写出一个函数,用于打印出一个数组中的最大或者最小值。练习2:写一个函数,对一个数组进行排序(使用冒泡排序跟选择排序)。冒泡排序与选择排序在实际应用中并不多见,因为数组的值存放在堆内存中,而两者排序都是频繁的置换位置,所以在堆...
分类:
编程语言 时间:
2015-11-07 10:47:28
阅读次数:
168
前言 本篇博客是在伍迷兄的博客基础上进行的,其博客地址。 希尔排序相当于直接插入排序的优化,它们同属于插入排序类,堆排序相当于简单选择排序的优化,它们同属于选择排序类。而快速排序其实就是冒泡排序的升级,它们都属于交换排序类。即它也是通过不断的比较和移动交换来实现排序的,只不过它的实现,增大了记录.....
分类:
编程语言 时间:
2015-11-06 22:08:29
阅读次数:
388
转自:http://blog.csdn.net/letthinking/article/details/6764996 .数组的排序方法有很多,效率也各不相同,下面简单介绍一下几种常见的排序算法。 1.选择排序法:将要排序的数组分成两部分,一部分是从大到小已经排好序的,一部分是无序的,从无序的部.....
分类:
编程语言 时间:
2015-11-06 12:52:36
阅读次数:
178
很久没有复习算法了,今天开始准备拿来练练手。 先从简单的选择排序入手。 选择排序,即按顺序,每次从某数开始,选择出一个最小(大)数,与某数交换位置。 1 /* 2 * Copyright (c) 2015 4 * All rights reserved. 5 */ 6 packa...
分类:
编程语言 时间:
2015-11-03 21:13:33
阅读次数:
170
语言中,常用的算法有:冒泡排序、快速排序、插入排序、选择排序、希尔排序、堆排序以及归并排序等等。那么从这篇开始,我将分别总结下这几种排序法。先交代一下,我们将要排序的数组定义为arr[N],即数组arr[]包含N个元素。## 冒泡排序法(Bubblesort) ##所谓排序法,就是对一组无序的序列进...
分类:
编程语言 时间:
2015-11-01 22:28:43
阅读次数:
336
//?ConsoleApplication6.cpp?:?定义控制台应用程序的入口点。
//
#include?"stdafx.h"
#include?<stdio.h>
void?sort(int?array[],?int?n)
{
int?i,?j,?min,?t;
for?(i?=?0;?i?<?n?-?1;?...
分类:
编程语言 时间:
2015-11-01 16:45:49
阅读次数:
182
选择排序:每次遍历从待排序的元素中找到最小的元素,顺序放在已排序的元素末尾流程:第一趟:选择第一个元素一次与其他元素比较,遇到比自己小的元素则交换,继续与其他元素比较,直至一趟遍历结束,此时第一个数为最小的数第二趟:第一个最小数为已排好元素,在未排序的元素中遍历,遍历步骤同第一趟,遍历结束后得到剩下...
分类:
编程语言 时间:
2015-10-29 19:51:39
阅读次数:
178