java代码按顺序排序 java代码按顺序排序怎么操作
请用java语言编写排序程序。
参考代码如下,可以按需求自己修改
成都创新互联公司是一家专业提供城西企业网站建设,专注与成都网站建设、成都网站制作、HTML5、小程序制作等业务。10年已为城西众多企业、政府机构等服务。创新互联专业网站建设公司优惠进行中。
import java.util.Date;
public class SortThread {
public static void main(String[] args) {
//产生一个随机数组
int[] ary = getArray();
//启动冒泡排序线程
new Thread(new MaoPao(ary)).start();
//启动快速排序线程
new Thread(new KuaiSu(ary)).start();
}
private static int[] getArray() {
//建议数字n不要超过1百万,十万左右就好了
int n = (int) (Math.random()*1000000)+11;
int[] ary= new int[n];
System.out.println("n的值是" + n);
for (int i = 0; i ary.length; i++) {
ary[i] = (int) (Math.random()*100000);
}
return ary;
}
}
//冒泡排序
class MaoPao implements Runnable {
int[] ary;
public MaoPao(int[] ary) {
this.ary = ary;
}
@Override
public void run() {
long st = System.currentTimeMillis();
System.out.println(new Date() + "冒泡排序线程:开始执行排序");
for (int i = 0; i ary.length - 1; i++) {
for (int j = 0; j ary.length - i - 1; j++) {
if (ary[j] ary[j + 1]) {
int temp = ary[j];
ary[j] = ary[j + 1];
ary[j + 1] = temp;
}
}
}
long et = System.currentTimeMillis();
System.out.println(new Date() + "冒泡排序线程完成排序,耗费时间" + (et - st) + "毫秒");
for (int i = 0; i ary.length; i++) {
System.out.println(ary[i]+" ");
}
}
}
//快速排序
class KuaiSu implements Runnable {
int[] ary;
public KuaiSu(int[] ary) {
this.ary = ary;
}
@Override
public void run() {
long st = System.currentTimeMillis();
System.out.println(new Date() + "快速排序线程:开始执行排序");
quickSort(ary, 1, ary.length);
long et = System.currentTimeMillis();
System.out.println(new Date() + "快速排序线程排序完成,耗费时间" + (et - st) + "毫秒");
for (int i = 0; i ary.length; i++) {
System.out.println(ary[i]+" ");
}
}
public static int Partition(int a[], int p, int r) {
int x = a[r - 1];
int i = p - 1;
int temp;
for (int j = p; j = r - 1; j++) {
if (a[j - 1] = x) {
i++;
temp = a[j - 1];
a[j - 1] = a[i - 1];
a[i - 1] = temp;
}
}
temp = a[r - 1];
a[r - 1] = a[i + 1 - 1];
a[i + 1 - 1] = temp;
return i + 1;
}
public static void quickSort(int a[], int p, int r) {
if (p r) {
int q = Partition(a, p, r);
quickSort(a, p, q - 1);
quickSort(a, q + 1, r);
}
}
}
java怎么让数组的数字从大到小排序?
将数字从大到小排序的方法:
例如简一点的冒泡排序,将第一个数字和后面的数字逐个比较大小,如果小于,则互换位置,大于则不动。此时,第一个数为数组中的最大数。然后再将第二个数与后面的数逐个比较,以次类推。
示例代码如下:
public class Test {
public static void main(String[] args) {
int [] array = {12,3,1254,235,435,236,25,34,23};
int temp;
for (int i = 0; i array.length; i++) {
for (int j = i+1; j array.length; j++) {
if (array[i] array[j]) {
temp = array[i];
array[i] = array[j];
array[j] = temp; // 两个数交换位置
}
}
}
for (int i = 0; i array.length; i++) {
System.out.print(array[i]+" ");
}
}
}
数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。
Java 语言中提供的数组是用来存储固定大小的同类型元素。
你可以声明一个数组变量,如 numbers[100] 来代替直接声明 100 个独立变量 number0,number1,....,number99
扩展资料
Java中利用数组进行数字排序一般有4种方法:
1、选择排序是先将数组中的第一个数作为最大或最小数,然后通过循环比较交换最大数或最小数与一轮比较中第一个数位置进行排序。
2、冒泡排序也是先将数组中的第一个数作为最大或最小数,循环比较相邻两个数的大小,满足条件就互换位置,将最大数或最小数沉底。
3、快速排序法主要是运用Arrays类中的Arrays.sort方法()实现。
4、插入排序是选择一个数组中的数据,通过不断的插入比较最后进行排序。
Java中如何实现字符串按字母顺序排序
package string;
import java.util.Arrays;
import java.util.Scanner;
public class SortDemo
{
public static void main(String[] args)
{
String[] strings = new String[10];
Scanner scanner = new Scanner(System.in);
for (int i = 0; i strings.length; i++)
{
System.out.println("请输入第" + (i + 1) + "个字符串:");
strings[i] = scanner.nextLine();
}
Arrays.sort(strings);
System.out.println(Arrays.toString(strings));
}
}
用Java在键盘上输入十个数,按照从大到小的顺序排列是什么?
/**
*推荐个冒泡法:
*测试过的,花了十分钟时间,
*很好用哦;
*/
publicstaticvoidmain(String[]args){
//定义一个数组,大小为十
inta[]=newint[10];
//将输入的十个数,依次赋值给数组
for(inti=0;iScannersc=newScanner(System.in);
System.out.println("pleaseinputthe"+(i+1)+"number");
a[i]=sc.nextInt();
}
//两层循环,进行冒泡排序
for(intj=0;jfor(intk=0;kintl;
if(a[k]a[k+1]){
l=a[k];
a[k]=a[k+1];
a[k+1]=l;
}
}
}
System.out.println(Arrays.toString(a));
}
网站栏目:java代码按顺序排序 java代码按顺序排序怎么操作
当前路径:http://ybzwz.com/article/ddigicd.html