java - 反转数组打印的顺序

标签 java arrays

我该如何将顺序从升序反转为降序?我有点困惑,因为我不能使用 array.reverse 等,因为在我们的测试中我们不允许使用 java 内置方法。这是一个无赖,arrays.sort 是惊人的。但到目前为止,它确实按升序打印。我对编码和这个网站相对较新,所以如果我的格式不好。我很抱歉。

public static int[] sort(int a, int b, int c) {
    int[] j = {a, b ,c};
    int i, k, temp = 0;

    for(i = 0; i < j.length; i++) {
        for(k = i + 1; k < j.length; k++) {
            temp = 0;
            if(j[i] > j[k]) {
                temp = j[i];
                j[i] = j[k];
                j[k] = temp;
            }
        }
    }
}

public static void main (String[] args) {

    System.out.println(Arrays.toString((sort(6,3,11))));

最佳答案

只需切换这一行:

if(j[i] > j[k]) {

对此:

if(j[i] < j[k]) {

这是因为在现有代码中,如果第一个元素较大,则需要交换元素(从而将较大的元素移动到列表中的后面)。

当您使用第二个代码片段时,如果第一个代码片段较小,它会交换元素,从而将较小的元素移动到列表中的后面。

关于java - 反转数组打印的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54524680/

相关文章:

java - SWT中的动态颜色应该如何分配和处理?

java - 编写一个代码来查找数字的整除性(java)?

java - 序列化的 Java 对象是否应该在每次序列化时始终由相同的字节序列表示?

JavaFX 切换按钮阴影

php - 基于不同键的回显数组

javascript - 将元素附加到数组 : Differences between direct assignment and `push` ?

arrays - 均衡数组所需的最少变换次数

JAVA AWT SWING代码移植到Android NDK

php - 返回 PHP 数组名

javascript - 将 JS 数组 UNIX 日期整数转换为 JS Date 对象