1、选择排序:
思路:选择排序(降序)每一轮循环都找到剩余数中最大的数放在当前轮数的首位,即选出最大值;
如第一轮 i = 0 时:该轮首位为 nums[0] ,然后从nums[1] 开始比较,每找到比nums[0] 大的数即交换数据,直到这轮结束。下一轮以nums[1] 为首位,从nums[2] 开始,直到结束。
升序排序反之即可。...
分类:
编程语言 时间:
2016-05-06 15:29:28
阅读次数:
178
def fe(L,n): sb = len(L) if n > sb: return L for i in range(sb): print i if L[i] >= L[n]: a =L[i] L[i] = L[n] L[n] = a print L fe(L,n+1) ...
分类:
编程语言 时间:
2016-05-06 02:10:15
阅读次数:
199
常见的排序算法有冒泡排序、选择排序、插入排序、堆排序、归并排序、快速排序、希尔排序、基数排序、计数排序,下面通过Java实现这些排序
1、冒泡排序
package com.buaa;
import java.util.Arrays;
/**
* @ProjectName SortingAlgorithm
* @PackageName com.buaa
* @ClassName Bubbl...
分类:
编程语言 时间:
2016-05-04 13:30:38
阅读次数:
314
排序是我们在程序中经常要用到的一种算法,好的排序可以极大的提高我们的工作效率,本篇主要介绍几种常见的排序算法;(未完待续) 1、冒泡排序: 2、选择排序: 3、插入排序: 4、希尔排序: ...
分类:
编程语言 时间:
2016-05-03 02:02:03
阅读次数:
166
对堆进行排序,利用大堆实现升序,小堆实现降序。例如升序的实现,将较大数据存放在最后面,依次往前存放数据。具体为交换第一个元素和最后一个元素,再将不包含最后一个元素的堆进行下调,使堆保持大堆,将最大数据存放在堆中第一个位置,循环执行上述步骤,直到需要下调的数..
分类:
编程语言 时间:
2016-05-03 00:40:42
阅读次数:
462
简介白哥解释: 选择排序过程:第 n 轮时是将第 n 个数和后面每一个数进行比较,如果第 m 个数比第 n 个数小,就记录第 m 个数的位置,然后继续拿第 m 个数和后面每一个数进行比较,直到结尾;一共排了 a.length 轮,第 n 轮排序的结果是把最 n 小数的和第 n 个数交换位置。 第 n... ...
分类:
编程语言 时间:
2016-05-02 14:19:20
阅读次数:
162
初始化数组的方法:统一初始化或逐项初始化。 遍历数组的方法: 1、FOR循环 2、DO...WHILE语句 3、WHILE语句 4、foreach 数组中的键值可以是整数,也可以是字符串。 数组可以储存任意数据类型。 了解内容:数组运算符。 数组排序问题: 内部排序: 1、冒泡排序 2、选择排序法 ...
分类:
编程语言 时间:
2016-04-30 22:08:03
阅读次数:
131
计数排序1、 名次 :所谓名次,通俗理解即为该元素在序列中排行老几的意思。2.、如何求名次:依次对每一个元素进行比较,若排在自己(该元素)前面的元素比自己大,则前面的元素在排行计数上加1,反之则自己加1。3、利用附加数组的计数排序:根据自身名次重新整理一份排序序列存储在附加数组中,然后将附加数组值拷贝到原序列中。
1)代码:template void SortClass...
分类:
编程语言 时间:
2016-04-29 17:44:37
阅读次数:
251