/* Date:2014.12.13
选择排序思路:在每一步中选取最小值来重新排列,通过选择和交换来实现排序。
流程:1).首先从原始数据中,选择最小的一个数据,将其和位于第一个位置的数据交换;
2).再从剩下的 n-1 个数据中选择最小元素和第二个位置的数据进行交换;
3).重复(2)(共 n-1 次),直到数组有序。
时间复杂度:最差O(n^2),平均...
分类:
编程语言 时间:
2014-12-13 17:56:51
阅读次数:
187
排序是数据结构的一种重要运算。本章的5.1节至5.6节介绍内排序的各种方法,5.7节介绍外排序方法。此外,堆排序也是一种典型的选择排序,有关堆排序的算法将在第8章中介绍。5.1基本概念在讨论排序的概念之前,首先引入排序码的概念。排序码是结点中的一个或多个字段,其值作为排序运算中的依据。排序码可以是关...
分类:
编程语言 时间:
2014-12-11 20:45:43
阅读次数:
183
选择排序:假设变量都定义过//外循环for(k=0;k<n-1;k++){ //n是输入的数组中元素的个数,显示假设a[index]最小,0<k<n-1 index=k;//设初值为0 for(i=k+1;i<n;i++){ //内循环 if(a[i]<...
分类:
编程语言 时间:
2014-12-11 17:13:09
阅读次数:
132
原文: 一步一步写算法(之选择排序) 【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 选择排序是和冒泡排序差不多的一种排序。和冒泡排序交换相连数据不一样的是,选择排序只有在确定了最小的数据之后,才会发生交换。怎么交换呢?我们可以以下面一组数据作...
分类:
编程语言 时间:
2014-12-11 10:15:25
阅读次数:
174
//指针在C语言算法中的应用
//首先说的是排序
//排序基本上分为5种
//插入排序, 选择排序, 交换排序, 归并排序, 分配排序
//先说7上8下的冒泡排序
#include
#include
using namespace std;
void BubbleSort(int *Array, int n)
{
int a;
for(int i = n; i > 0;...
分类:
其他好文 时间:
2014-12-10 16:20:49
阅读次数:
222
ABC12初级开发人员3技术分类具体知识点4Java基础、核心语法、数组JDK的安装和配置、Java技术架构、JAVA虚拟机的原理和运行机制; 数组的使用与介绍、一维数组与多维数组的定义、创建和初始化、各种数据类型的数组、Arrays工具类、冒泡排序、选择排序、二分查找。5面向对象程序设计、异常处理...
分类:
其他好文 时间:
2014-12-09 22:59:48
阅读次数:
283
排序算法目录概述排序算法交换排序快速排序冒泡排序选择排序堆排序直接选择排序插入排序希尔排序直接插入排序排序算法的运用概述排序算法交换排序快速排序冒泡排序选择排序堆排序直接选择排序插入排序希尔排序直接插入排序排序算法的运用
分类:
编程语言 时间:
2014-12-09 11:53:51
阅读次数:
185
常用的排序算法的时间复杂度和空间复杂度排序法最差时间分析平均时间复杂度稳定度空间复杂度冒泡排序O(n2)O(n2)稳定O(1)快速排序O(n2)O(n*log2n)不稳定O(log2n)~O(n)选择排序O(n2)O(n2)稳定O(1)二叉树排序O(n2)O(n*log2n)不一顶O(n)插入排序O...
分类:
编程语言 时间:
2014-12-09 11:46:03
阅读次数:
190
数组元素个数:n算法思想:从第一个元素开始与其余的比较完毕将最小的放在第一个,然后第二个、第三个、一直到最后代码:$arr[$j]) { $temp = $arr[$i]; $arr[$i] =...
分类:
编程语言 时间:
2014-12-09 00:19:05
阅读次数:
176
#include void SelectSort(int A[] , int N);int main(int argc, const char * argv[]) { int A[15] = { 9,8,6,7,5,3,4,1,2,0,4,7,8,3,2}; SelectSort...
分类:
编程语言 时间:
2014-12-08 17:27:43
阅读次数:
160