「java多个数字对比排列」java多个数字对比排列顺序

博主:adminadmin 2023-01-12 02:09:07 965

今天给各位分享java多个数字对比排列的知识,其中也会对java多个数字对比排列顺序进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java 输入任意几个数字,怎样将他们从大到小排序?

public static void main(String[] args) { Scanner scan = new Scanner(System.in)。

}

System.out.println("从大到小输出:");

for (int m = num.length-1; m =0; m--) {

System.out.println(num[m]);//从大到小输出

}

}

String[] str = scan.nextLine().split(" "),// 输入时以空格隔开数字。

int[] num = new int[str.length];//初始化一个整型数组,长度为你输入数字的个数。

String[] str = scan.nextLine().split(" ");// 输入时以空格隔开数字

int[] num = new int[str.length];//初始化一个整型数组,长度为你输入数字的个数

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

num[i] = Integer.parseInt(String.valueOf(str[i]));//将字符转换为int型再赋给整型数组

}

Arrays.sort(num);//升序排序

System.out.println("从小到大输出:");

for (int j = 0; j num.length; j++) {

System.out.println(num[j]);//从小到大输出

在java中怎么比较三个整数大小例如(a , b, c);并从小到大输出

用冒泡排序,对三个数字按照由小到大进行排序。以23、11、17为例,代码如下:

import java.util.Scanner;

public class woo {

static int[] bubbleSort(int[] date) {

boolean isSwap;

for(int j = 1; j date.length; j++) {

isSwap = false;

for(int i = 0; i date.length - j; i++) {

if(date[i] date[i+1]) {

date[i] = date[i] ^ date[i+1];

date[i+1] = date[i] ^ date[i+1];

date[i] = date[i] ^ date[i+1];

isSwap = true;

}

}

if(isSwap == false)

break;

}

return date;

}

public static void main(String args[]) {

int date[] = new int[3];

System.out.println("输入三个整数:");

Scanner num = new Scanner(System.in);

for(int i = 0;i date.length; i++)

date[i] = num.nextInt();

date = bubbleSort(date);

for(int count = 0; count date.length; count++)

System.out.print(date[count] +"\t");

System.out.println("");

}

}

扩展资料:

通常排序算法,可以分为两大类。

非线性时间比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此称为非线性时间比较类排序。包括交换排序、插入排序、选择排序、归并排序。

线性时间非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此称为线性时间非比较类排序。包括计数排序、桶排序、计数排序。

参考资料:冒泡法排序——百度百科

java三个数排序比较大小的完整代码,并给出详细解释,初学者,谢谢

import java.util.Arrays;

import java.util.Collection;

public class Demo2 {

public static void main(String[] args) {

// 这是你的三个数

int[] arr = { 12, 32, 18 };

// 两层嵌套循环

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

for (int j = 0; j i; j++) {

// 如果后者小于前者,让他们交换位置,一直循环

// 直到每个数字都从头到尾跟数组里的每个数字比较一次

if (arr[i] arr[j]) {

// 这三步就是交换位置,相信聪明的你一定看得懂了

arr[i] = arr[i] + arr[j];

arr[j] = arr[i] - arr[j];

arr[i] = arr[i] - arr[j];

}

}

}

//最后打印出来

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

System.out.println(arr[i]);

}

}

}

资料拓展:

Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论

java中可以比较,判断多组数字大小的方法有哪些,求大佬告知

可以用Comparator进行比较,下面是代码示例

  //AbsComparator.java  

  import   java.util.*;  

  public   class   AbsComparator   implements   Comparator   {  

      public   int   compare(Object   o1,   Object   o2)   {  

          int   v1   =   Math.abs(((Integer)o1).intValue());  

          int   v2   =   Math.abs(((Integer)o2).intValue());  

          return   v1      v2   ?   1   :   (v1   ==   v2   ?   0   :   -1);  

      }  

  }  

 

  //Test.java  

  import   java.util.*;  

  public   class   Test   {  

      public   static   void   main(String[]   args)   {  

   

          //产生一个20个随机整数的数组(有正有负)  

          Random   rnd   =   new   Random();  

          Integer[]   integers   =   new   Integer[20];  

          for(int   i   =   0;   i      integers.length;   i++)  

          integers[i]   =   new   Integer(rnd.nextInt(100)   *   (rnd.nextBoolean()   ?   1   :   -1));  

   

          System.out.println("用Integer内置方法排序:");  

          Arrays.sort(integers);  

          System.out.println(Arrays.asList(integers));  

   

          System.out.println("用AbsComparator排序:");  

          Arrays.sort(integers,   new   AbsComparator());  

          System.out.println(Arrays.asList(integers));  

      }  

  }

关于java多个数字对比排列和java多个数字对比排列顺序的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。