sunny123456

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  1796 随笔 :: 22 文章 :: 24 评论 :: 226万 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

数组元素的反转
原文链接 https://www.cnblogs.com/stefaniee/p/10920743.html

 1 package com.demo;
 2 
 3 /*
 4  * 数组元素的反转(不使用新数组)
 5  * 实现数组元素的反转,就是把数组中对称位置的元素调换
 6  */
 7 
 8 public class ArrayReverse {
 9     public static void main(String[] args) {
10         // 定义一个数组
11         int[] arr = new int[] { 10, 50, 30, 25, 70, 35 };
12 
13         // 遍历原数组
14         System.out.print("反转前的数组:");
15         for (int i = 0; i < arr.length; i++) {
16             System.out.print(arr[i] + " ");
17         }
18         System.out.println();
19 
20         // 交换对称位置的元素
21         /*
22          * 实现原理:
23          * 定义两个变量来存储索引值
24          *   int first = 0; // 0号索引值
25          *   int last = arr.length - 1; // 最大索引值
26          *   
27          * 1.拿数组中0号索引位置的元素和最大索引位置的元素交换
28          * 2.拿数组中1号索引位置的元素和第二大索引位置的元素交换
29          * 其实就是对称位置的元素进行交换
30          * ......
31          * 以此类推,当  first>=last 的时候,停止交换
32          * 换句话说,交换的条件为:first<last
33          */
34         // 方式一
35         for (int first = 0, last = arr.length - 1; first < last; first++, last--) {
36             int temp = arr[first];
37             arr[first] = arr[last];
38             arr[last] = temp;
39         }
40         
41         // 方式二
42 //        for (int i = 0; i < arr.length / 2; i++) {
43 //            int temp = arr[i];
44 //            arr[i] = arr[arr.length - i - 1];
45 //            arr[arr.length - i - 1] = temp;
46 //        }
47 
48         // 遍历反转后的数组
49         System.out.print("反转后的数组:");
50         for (int i = 0; i < arr.length; i++) {
51             System.out.print(arr[i] + " ");
52         }
53         System.out.println();
54     }
55 }
posted on   sunny123456  阅读(489)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示