「数组的排序与查找Java」数组的排序与查找Java
本篇文章给大家谈谈数组的排序与查找Java,以及数组的排序与查找Java对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、java数组如何排序
- 2、JAVA问题对一个数组进行排序查找,答案请私信给我
- 3、在java编程中如何对数组进行排序,并输出排序后的数组及原数组下标值
- 4、java数组排序
- 5、已排序数组的顺序查找(用java语言实现)。
java数组如何排序
如果是升序可以使用 Arrays.sort(数组名)(注意:要使用这个方法必须导入java.util.Arrays包)或者使用冒泡排序,如果是降序只能自己写,推荐使用冒泡排序
JAVA问题对一个数组进行排序查找,答案请私信给我
你可以使用排序算法,诸如冒泡等,
还有种简单点的,使用java集合的排序,
将数组所有元素添加到List对象中,然后调用Collections.sort(list),list集合中的数据即为排序好的数组,根据需要取出就行
在java编程中如何对数组进行排序,并输出排序后的数组及原数组下标值
java变成对数组进行排序可以使用ArraySort方法,保存源数组下标值可以存入map中,如下代码:
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
public class ceshi {
public static void main(String[] args) {
int n = 5;
int[] a = { 8, 5, 4, 6, 2, 1, 7, 9, 3 };
HashMap map = new HashMap();
for (int i = 0; i a.length; i++) {
map.put(a[i], i); // 将值和下标存入Map
}
// 排列
List list = new ArrayList();
Arrays.sort(a); // 升序排列
for (int i = 0; i a.length; i++) {
list.add(a[i]);
}
for (Object object : list) {
System.out.print(object + ",");
}
System.out.println();
// 查找原始下标
for (int i = 0; i n; i++) {
System.out.print(map.get(a[i]) + ",");
}
}
}
运行结果如下:
java数组排序
//原理:每次都找到当次最大的数,按大小顺序依次放入数组相应位置
//比如:第一次先找到最大的数并记下其位置,如果其不在数组第一位,
//则将其与第一位交换,使最大数置于第一位
//第二次再循环查找第二大的数并记下其位置,如果其不在数组第二位,
//则将其与第二位交换,使最大数置于第二位
//依次类推.........................................
//第i次再循环查找第i大的数并记下其位置,如果其不在数组第 i位,
//则将其与第 i位交换,使最大数置于第 i位
public class SelectSort {
public static void main(String[] args) {
int[] a = {25,15,42,16,12,36};
int max = 0;
int tmp = 0;
for(int i=0;ia.length;i++){
max = i;//
/**查找第 i大的数,直到记下第 i大数的位置***/
for(int j=i+1;ja.length;j++){
if(a[max]a[j])
max = j;//记下较大数位置,再次比较,直到最大
}
/***如果第 i大数的位置不在 i,则交换****/
if(i!=max){
tmp = a[i];
a[i] = a[max];
a[max] = tmp;
}
}
for(int i=0;ia.length;i++)
System.out.print(a[i]+" ");
}
}
已排序数组的顺序查找(用java语言实现)。
用for循环就可以实现顺序查找的。。。。下面是一个示例代码。。。
public class Test {
public static int find(int[] arr, int x){
int index = -1;//记录x在数组arr中的位置
for(int i = 0; iarr.length;i++)
if(arr[i]==x){
index = i;
break;
}
return index;
}
public static void main(String args[]) {
int[] a = new int[]{1,2,3,4,5,6};
int i = find(a,3);//找出3在数组a中的位置
if(i==-1)
System.out.println("没有找到");
else
System.out.println("该值在数组中的位置 :" + i);
}
}
希望对你有帮助。。。仍有问题可以HI我。。。
关于数组的排序与查找Java和数组的排序与查找Java的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-11-27,除非注明,否则均为
原创文章,转载请注明出处。