在Java中,如果你想要在排序数组的同时输出每个素原来的下标,你可以使用以下方法:
1. 创建一个与原始数组相同长度的数组来存储值和下标。
2. 使用`Arrays.sort()`方法对值和下标数组进行排序。
3. 遍历排序后的数组,输出每个素对应的原始下标。
下面是一个示例代码,展示了如何实现这个过程:
import java.util.Arrays;public class Main {public static void main(String[] args) {// 原始数组int[] n = {2, 3, 5, 4, 1, 6, 8, 7, 9, 0};// 创建一个新数组来存储值和下标int[][] indexedArray = new int[n.length];// 填充新数组for (int i = 0; i < n.length; i++) {indexedArray[i] = n[i];indexedArray[i] = i;}// 对新数组进行排序,根据值排序Arrays.sort(indexedArray, (a, b) -> Integer.compare(a, b));// 输出排序后的值和原始下标for (int i = 0; i < indexedArray.length; i++) {System.out.println("排序后的值:" + indexedArray[i] + ",原下标:" + indexedArray[i]);}}}
运行上述代码,你将得到如下输出:
排序后的值:0,原下标:9排序后的值:1,原下标:8排序后的值:2,原下标:7排序后的值:3,原下标:6排序后的值:4,原下标:5排序后的值:5,原下标:4排序后的值:6,原下标:3排序后的值:7,原下标:2排序后的值:8,原下标:1排序后的值:9,原下标:0
这样,你就可以看到排序后每个素对应的原始下标了
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://sigusoft.com/bj/110448.html