Java算法(五):手写数组逆置API方法,实现数组逆置。 while实现 && for循环实现

Java算法(五)

while 循环实现

需求:

已知一个数组,arr = {11, 22, 33, 44, 55};使用程序实现把数组中的元素交换位置。

交换后的数组为 arr = {55, 44, 33, 22, 11}; 并在控制台输出交换后的数组元素。

代码示例

java 复制代码
package com.liujintao.reversal;

public class ReversalArray {
    public static void main(String[] args) {
        // 你想要键盘录入数组也是可以的
       int[] arr = {11, 22, 33, 44, 55};

        int[] result = handleReversalArray(arr);
        for (int i = 0; i < result.length; i++) {
            System.out.println(result[i]);
        }
    }

    /**
     * 手写冒泡排序方法
     */
    public static int[] handleReversalArray(int[] arr) {
        int i = 0;
        int j = arr.length - 1;
        while (i < j) {
            int temp = arr[i];
            arr[i] = arr[j];
            arr[j] = temp;
            i++;
            j--;
        }
        return arr;
    }
}

for循环实现

java 复制代码
package com.liujintao.reversal;
    /*
        使用for循环实现逆置数组
     */
public class ReversalArray2 {
    public static void main(String[] args) {
        // 你想要键盘录入数组也是可以的
        int[] arr = {11, 22, 33, 44, 55};
        int[] result = handleReversalArray(arr);
        for (int i = 0; i < result.length; i++) {
            System.out.println(result[i]);

        }
    }

    /**
     * 使用for循环实现逆置的API
     */
    public static int[] handleReversalArray (int[] arr) {
        // 和 while 一样,先设置好下标
        int start = 0;
        int end = arr.length - 1;
        for (; start < end; start++, end--) {
            int temp = arr[ start];
            arr[start] = arr[end];
            arr[end] = temp;
        }
        return arr;
    }
}

结果示例

相关推荐
chools5 小时前
【AI超级智能体】快速搞懂工具调用Tool Calling 和 MCP协议
java·人工智能·学习·ai
李白你好5 小时前
TongWeb EJB 反序列化生成工具(Java-Chain 插件)
java·安全
leobertlan5 小时前
好玩系列:用20元实现快乐保存器
android·人工智能·算法
青梅橘子皮5 小时前
C语言---指针的应用以及一些面试题
c语言·开发语言·算法
U盘失踪了6 小时前
Java 的 JAR 是什么?
java·jar
_深海凉_6 小时前
LeetCode热题100-有效的括号
linux·算法·leetcode
今天又在写代码7 小时前
java-v2
java·开发语言
competes7 小时前
慈善基金投资底层逻辑应用 顶层代码低代码配置平台开发结构方式数据存储模块
java·开发语言·数据库·windows·sql
2501_913061348 小时前
网络原理知识
java·网络
希望永不加班8 小时前
Spring AOP 代理模式:CGLIB 与 JDK 动态代理区别
java·开发语言·后端·spring·代理模式