0
点赞
收藏
分享

微信扫一扫

每天搞算法与数据结构 ------每日更新

日月同辉9908 2022-03-12 阅读 52
算法java

一、排序系列

1.选择排序

/******************************************************************************

Welcome to GDB Online.
GDB online is an online compiler and debugger tool for C, C++, Python, Java, PHP, Ruby, Perl,
C#, VB, Swift, Pascal, Fortran, Haskell, Objective-C, Assembly, HTML, CSS, JS, SQLite, Prolog.
Code, Compile, Run and Debug online from anywhere in world.

*******************************************************************************/
public class Main
{
  public static void selectSort (int[]arr)
  {
    if (arr == null || arr.length < 2)
      {
	return;
      }
    int N = arr.length;
    for (int i = 0; i < N; i++)
      {
	int minValueIndex = i;
	for (int j = i + 1; j < N; j++)
	  {
	    minValueIndex = arr[j] < arr[minValueIndex] ? j : minValueIndex;
	  }
	swap (arr, i, minValueIndex);
      }
  }

/*
交换
*/
  public static void swap (int[]arr, int i, int j)
  {
    int temp = arr[j];
    arr[j] = arr[i];
    arr[i] = temp;
  }

  public static void printArray (int[]arr)
  {
    for (int i = 0; i < arr.length; i++)
      {
	System.out.print (arr[i] + " ");
      }
    System.out.println ();
  }
  public static void main (String[]args)
  {
    int[] arr = { 2, 5, 488, 1, 0, 85748, 10, 99 };
    printArray (arr);
    selectSort (arr);
    printArray (arr);
  }
}
举报

相关推荐

0 条评论