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;
    }
}

结果示例

相关推荐
咖啡八杯1 分钟前
实体基类设计:BaseEntity 公共字段抽取与 TreeEntity 树形继承
java·架构·代码规范
她的男孩5 分钟前
AI 写完 100 万行代码没人 Review,我做了一件事:把 AI 写的代码管起来了
java·人工智能·程序员
Gl�ria6 分钟前
Linux 查看日志常用命令
java·linux·servlet
鹿角片ljp18 分钟前
LeetCode 148:排序链表|归并排序、快慢指针找左中点与链表断开
算法
大模型丫丫20 分钟前
LangGraph + MCP(Model Context Protocol)完整讲解
java·开发语言·数据库
LabVIEW开发21 分钟前
LabVIEW字符串特殊字符检测兼容
算法·labview·labview知识·labview功能·labview程序
lemon_sjdk25 分钟前
JavaFX 源码深度剖析:揭开 StringBinding 的神秘面纱
java·javafx·源码解析·绑定框架
砚底藏山河35 分钟前
拉数管道设计:从一次性脚本到可重启的数据流水线(魔码量化实战 #01)
java·数据库·python·金融·maven
饕餮争锋38 分钟前
PATH路径列表介绍
java·linux·服务器
SimonKing39 分钟前
一文终结 Java 路径加载争议:斜杠 什么时候该加,什么时候不该加
java·后端·程序员