博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
十八、自己动手实现排序算法(6)-------- “ Select Sort 选择排序 ”
阅读量:2052 次
发布时间:2019-04-28

本文共 1209 字,大约阅读时间需要 4 分钟。

参考文章:


选择排序分析:

平均时间复杂度 最好情况 最坏情况 空间复杂度 排序方式 稳定性
O(n^2) O(n) O(n^2) O(1) In-place 不稳定

 

选择排序原理:

       选择排序(Selection-sort)是一种简单直观的排序算法。它的工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。 

 

选择排序原理图解:

 

 

Java 实现代码:

package com.sorting.algorithm;public class SelectionSort {	// 选择排序算法	public static int[] selectionSort(int[] array){		for(int i=0; i < array.length; i++){			int minIndex = i;			for(int j=i; j < array.length; j++){				if(array[minIndex] > array[j])					minIndex = j;			}			int temp = array[i];			array[i] = array[minIndex];			array[minIndex] = temp;						printArr(array);		}		return array;	}	public static  void printArr(int[] array){		for (int i = 0; i < array.length; i++) {			if(i != array.length-1)				System.out.print(array[i] + ",");			else				System.out.println(array[i]);		}		System.out.println();	}	public static void main(String[] args) {		int[] array = { 58,36,70,22,88,64,1,32 };		System.out.println("排序之前:");		printArr(array);		System.out.println("-------------------------------");				System.out.println("排序过程");		selectionSort(array);				System.out.println("-------------------------------");		System.out.println("排序之后:");		printArr(array);		}}

 

 

 

选择排序算法测试:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

转载地址:http://bzylf.baihongyu.com/

你可能感兴趣的文章
【Python】详解Python多线程Selenium跨浏览器测试
查看>>
Jmeter之参数化
查看>>
Shell 和Python的区别。
查看>>
Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结
查看>>
Loadrunner之https协议录制回放报错如何解决?(九)
查看>>
python中xrange和range的异同
查看>>
列表、元组、集合、字典
查看>>
【Python】easygui小甲鱼
查看>>
【Python】关于Python多线程的一篇文章转载
查看>>
【Pyton】【小甲鱼】文件
查看>>
【Pyton】【小甲鱼】永久存储:腌制一缸美味的泡菜
查看>>
【Pyton】【小甲鱼】异常处理:你不可能总是对的
查看>>
APP性能测试工具
查看>>
【Pyton】【小甲鱼】类和对象
查看>>
压力测试工具JMeter入门教程
查看>>
作为一名软件测试工程师,需要具备哪些能力
查看>>
【Pyton】【小甲鱼】类和对象:一些相关的BIF(内置函数)
查看>>
【Pyton】【小甲鱼】魔法方法
查看>>
单元测试需要具备的技能和4大阶段的学习
查看>>
【Loadrunner】【浙江移动项目手写代码】代码备份
查看>>