黑马程序员_关于选择排序和冒泡排序的复习

原创 2012年03月29日 11:46:33

---------------------- android培训java培训、期待与您交流! ----------------------


/*
选择排序和冒泡排序:
内循环参与比较的元素在逐级地减少。


 思考:能否将一个字符串变成字符数组后,对该字符数组进行冒泡排序呢?
    可以的,但是有几个地方需要注意,int数组需要变为char型数组,定义的临时变量temp也必须变为char字符。


*/
class SortDemo
{
//选择排序:
public static void selectSort(int[] arr)
{
for(int x=0;x<arr.length-1; x++)
{
for(int y=x+1;y<arr.length; y++)
{
if(arr[x]>arr[y])
{
int temp = arr[x];
arr[x] = arr[y];
arr[y] = temp;
}
}
}


}


//冒泡排序:
public static void bubbleSort(int[] arr)
{
for(int x=0;x<arr.length-1;x++)
{
for(int y=0;y<arr.length-x-1;y++)
{
if(arr[y]>arr[y+1])
{
int temp = arr[y];
arr[y] = arr[y+1];
arr[y+1] = temp;
}
}
}
}
public static void main(String[] args)
{


int[] arr = {5,1,6,4,2,8,9};

printArray(arr);


//bubbleSort(arr);
selectSort(arr);
printArray(arr);


/*
//改int数组为char数组,temp变量也为char后可对字符数组进行冒泡排序。
String s ="hellodfworkday";


char[] chs =s.toCharArray();


printArray(chs);


bubbleSort(chs);


printArray(chs);
*/




}
public static void printArray(int[] arr)
{
System.out.print("[");
for(int x=0;x<arr.length;x++)
{
if(x!=(arr.length-1))
System.out.print(arr[x]+", ");
else
System.out.println(arr[x]+"]");
}
}
}

---------------------- android培训java培训、期待与您交流! ----------------------

详情请查看:http://edu.csdn.net/heima


各种排序总结(一)之--—冒泡排序、选择排序、快速排序

各种排序总结——冒泡排序、选择排序、快速排序        1、冒泡排序是比较经典的排序方法,是一种用时间换空间的排序方法。我总结了一下它的特点:(1)它的时间复杂度是;(2)每一趟相邻元素两两比较完...
  • xinyu2015
  • xinyu2015
  • 2015年11月04日 16:36
  • 4129

java中冒泡排序与选择排序的区别

初学java语言,排序算法绝对是我们拿来实践的好例子。而在排序中有两种简单的算法是绕不开的,就是冒泡排序与选择排序。下面来分别讲解: 冒泡算法:假设数组长度为lenght,冒泡算法的外循环为leng...
  • tiantianhuanle
  • tiantianhuanle
  • 2016年10月15日 21:27
  • 5715

基础排序总结(冒泡排序、选择排序、插入排序)

1、冒泡排序1.1、简介与原理冒泡排序算法运行起来非常慢,但在概念上它是排序算法中最简单的,因此冒泡排序算法在刚开始研究排序技术时是一个非常好的算法。冒泡排序原理即:从数组下标为0的位置开始,比较下标...
  • u013249965
  • u013249965
  • 2016年09月18日 16:08
  • 3008

冒泡排序,选择排序,插入排序的区别

#include int swap(int *a,int *b) { int t=*a; *a=*b; *b=t; } /* 冒泡排序的原理:每次在无序队列里将相邻两个数依...
  • wdkirchhoff
  • wdkirchhoff
  • 2014年12月07日 14:02
  • 8737

Java排序算法之冒泡排序和选择排序

前言:纵然伤心,也不要愁眉不展,因为你不知是谁会爱上你的笑容。——泰戈尔 《飞鸟集》 原文出处: import java.util.Arrays; class Demo { public...
  • u014158743
  • u014158743
  • 2016年09月19日 23:14
  • 689

冒泡排序和选择排序法的图示解析

思路:在进行冒泡法排序(升序)时,需要将数组元素(len)两两比较,如果 前面的元素大于后面的元素,则交换两个数,否则,比较下一个元素和它的下一个元素的大小,依次执行,执行一次循环,可以找到当前...
  • qq_34992845
  • qq_34992845
  • 2016年11月22日 00:25
  • 1557

【算法】插入排序/冒泡排序/选择排序

插入排序 插入排序的思想为:从数组的第二个元素开始遍历整个数组。针对每个元素,依次将其前面的所有元素和他进行比较,大于它的元素均向后移动,最后将该元素插入。 插入排序是一种稳定的排序算法。 时间...
  • cauchyweierstrass
  • cauchyweierstrass
  • 2015年11月10日 20:33
  • 1855

选择排序与冒泡排序的联系和区别

选择排序 每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法。 冒泡排序 冒泡排序(...
  • a907607222
  • a907607222
  • 2013年10月08日 11:43
  • 760

三种基本排序-冒泡排序、直接插入排序、选择排序

冒泡排序(从大到小)       原理:对于n个数,需要进行n-1次扫描,每次扫描通过相邻两个数的比较,找出最大的数,放到数列顶部。      程序:    1.冒泡排序1:每次扫描把下一个元素和最前...
  • chao360559040
  • chao360559040
  • 2010年10月29日 11:25
  • 14118

C#-冒泡排序和选择排序

将一个数组排序 //排序 #include int main() { int a[]={3,5,2,56,275,85,29,24}; int temp,i,j; int length= s...
  • qiulh125
  • qiulh125
  • 2015年12月25日 15:53
  • 844
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:黑马程序员_关于选择排序和冒泡排序的复习
举报原因:
原因补充:

(最多只允许输入30个字)