冒泡排序;简单选择排序

数组的排序:

冒泡排序的基本思想:

   在要排序的数组中,对当前还未排好序的范围

   内的全部数,自上而下(自左到右)对相邻的两

   个数依次进行比较和调整,让较大的往下沉(

   或向右移),较小的往上冒(或向左移)。即:

   每当两相邻的数比较后他们的顺序与排序要求

   相反时,就将他们互换。

 

冒泡排序的改进:

    对冒泡排序的常见的改进方法是 加入一个标志性的

    变量,用于标志某一轮排序过程中是否有数据交换,

    如果没有进行数据交换,则说明数据已经按照要求

    排列好,可立即结束排序,避免不必要的比较过程。

 冒泡排序的每一步详情

  第一轮:找最大值

  4>5  false  {4,5,2,3,1}

  5>2  true   {4,2,5,3,1}

  5>3  true   {4,2,3,5,1}

  5>1  true   {4,2,3,1,5}--排出5

  第二轮:找第二大

  4>2  true   {2,4,3,1,5}

  4>3  true   {2,3,4,1,5}

  4>1  true   {2,3,1,4,5}--排出4

  第三轮:找第三大

  2>3  false  {2,3,1,4,5}

  3>1  true   {2,1,3,4,5}--排出3

  第四轮:找第四大

  2>1  true   {1,2,3,4,5}--排出2

 

 

 

 

 

简单选择排序:基本思想如下

    在要排序的数组中,选择出最小(或者最大)的一

    个数与第一个位置的数交换;然后再剩下的数当

    中再找最小(或最大)的与第二个位置的数交换

    依次类推,直到第n-1个元素(倒数第二个)和第

    n个元素(最后一个数)比较为止。

 

    简单选择排序

  原始数据 {4,5,2,3,1};

  

  找出最小1  与4交换  {1,5,2,3,4}

  找出最小2  与5交换  {1,2,5,3,4}

  找出最小3  与5交换  {1,2,3,5,4}

  找出最小4  与5交换  {1,2,3,4,5}

工具类Arrays里的排序方法:

   Arrays.sort(数组名):对基本数据类型的数组

与引用类型的数组都可排序

猜你喜欢

转载自blog.csdn.net/K_KingoneTen/article/details/81211028
今日推荐