美文网首页
冒泡排序和选择排序 Java实现

冒泡排序和选择排序 Java实现

作者: nextliving | 来源:发表于2018-05-01 14:56 被阅读6次

代码

算法代码和测试代码如下:


package com.ms.sort;

import org.junit.Test;

/**

* 冒泡排序和选择排序

 * 参考https://bbs.csdn.net/topics/250021950

 * @author iengchen

 * @since 2018-05-01

 */

public class BubbleAndSelectionSort {

/**

* 冒泡排序

* @author iengchen

* @since 2018-05-01

* @param arr

* @return

*/

public int[] bubbleSort(int[] arr) {

int tmp;

for (int i = 1; i < arr.length; i++) {

for(int j=arr.length-1; j>=i; j--) {

if (arr[j] < arr[j-1]) {

tmp = arr[j-1];

arr[j-1] = arr[j];

arr[j] = tmp;

}

}

}

return arr;

}

@Test

public void testBubbleSort() {

int[] bubbleArr = {3,8,1,5,0,9,7,6};

int[] sortedBubbleArr = bubbleSort(bubbleArr);

for (int i = 0; i < sortedBubbleArr.length; i++) {

System.out.println(i+"-"+sortedBubbleArr[i]);

}

}

/**

* 选择排序

* @author iengchen

* @since 2018-05-01

* @param selecArr

* @return

*/

public int[] selecSort(int[] selecArr) {

for(int i=0; i<selecArr.length-1; i++) {

int tmp = selecArr[i];

int p = i;

for (int j = i+1; j < selecArr.length; j++) {

if (selecArr[j] < tmp) {

tmp = selecArr[j];

p = j;

}

}

selecArr[p] = selecArr[i];

selecArr[i] = tmp;

}

return selecArr;

}

@Test

public void testSelecSort() {

int[] selecArr = {3,8,1,5,0,9,7,6};

int[] sortedSelecArr = selecSort(selecArr);

for (int i = 0; i < sortedSelecArr.length; i++) {

System.out.println(i+"-"+sortedSelecArr[i]);

}

}

}

测试结果

2个排序的测试结果打印如下:

0-0
1-1
2-3
3-5
4-6
5-7
6-8
7-9

参考

相关文章

  • 冒泡排序 选择排序

    冒泡排序 java 实现 C 实现 选择排序 java 实现 C 实现

  • java 实现排序算法之「选择排序」

    java 实现排序算法系列 继冒泡排序算法之后,选择排序终于和大家见面了。为什么冒泡排序之后要说选择排序呢,是因为...

  • 面试知识点

    排序冒泡排序快速排序选择排序插入排序二路归并 查找二分查找 排序和查找的java实现 java语言Java字符串字...

  • 常用排序算法的Java实现

    冒泡、插入、选择、归并、快速排序的Java实现

  • 排序算法Java实现

    本文会通过Java语言实现:冒泡排序,插入排序,选择排序,归并排序,快速排序,桶排序,计数排序,基数排序,希尔排序...

  • 实现几种常见排序方法

    Java实现几种常见排序方法 日常操作中常见的排序方法有:冒泡排序、快速排序、选择排序、插入排序、希尔排序,甚至还...

  • 数据结构&算法(一)

    一、Java实现快速排序算法 二、Java实现折半插入排序算法 三、Java实现冒泡排序算法

  • JavaScript实现排序算法

    实现了冒泡,选择,插入,快排,希尔,归并 冒泡排序 选择排序 插入排序 快速排序 希尔排序 归并排序

  • 十大经典排序算法(java实现)

    前言 本文我们将以java代码实现十大经典排序算法,包括冒泡排序、选择排序、插入排序、希尔排序、归并排序、快速排序...

  • 排序算法的实现

    用java对常用内部排序算法的实现。 对冒泡排序,简单选择排序,直接插入排序,希尔排序,归并排序的简单实现(缺少快...

网友评论

      本文标题:冒泡排序和选择排序 Java实现

      本文链接:https://www.haomeiwen.com/subject/hynxrftx.html