码迷,mamicode.com
首页 > 编程语言 > 详细

常见排序算法小结

时间:2017-04-22 17:42:58      阅读:250      评论:0      收藏:0      [点我收藏+]

标签:实现   ati   int   数值   算法   冒泡   选择排序   依次   str   

排序算法有很多种,包括冒泡排序,选择排序,快速排序,插入排序,希尔排序,堆排序等。这里着重讨论下冒泡排序,快速排序和插入排序这三种排序算法。

冒泡排序——时间复杂度O ( n2 )

冒泡排序从第一个元素开始,依次与后面的元素比较,每次遇到比当前元素更大(或更小)的值时,则交换数值。每一轮比较后位于当前位置的数值都是最小(或最大)的,总共需要(n-1) + (n-2) + (n-3) + …… + 1 即(n+1)*n/2次比较,时间复杂度为O(n2)。

Java实现代码为:

	public static void bubbleSort(int[] nums){
		for(int i=0;i<nums.length;i++){
			for(int j=i;j<nums.length;j++)
				if(nums[i]>nums[j]){
					int temp = nums[i];
					nums[i] = nums[j];
					nums[j] = temp;
			    }
		}
		for(int i=0;i<nums.length;i++){
			System.out.println(nums[i]);
		}
	}

  

 

常见排序算法小结

标签:实现   ati   int   数值   算法   冒泡   选择排序   依次   str   

原文地址:http://www.cnblogs.com/lishenghua/p/6748202.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!