c# 数组反转

一个数组是{1,2,3,4,5,6},把它变成{6,5,4,3,2,1}

1.创建一个和原数组长度类型一样的数组来接收反转的数据

csharp 复制代码
        private static void Main(string[] args)
        {
           
            int[] arr = { 1, 3, 2, 90, 10 };
            arr = RevertArr(arr);//结果 10,90,2,3,1
            Console.WriteLine();
            Console.ReadLine();
        }
    public static int[] RevertArr(int[] arr)
        {
            int[] arr1 = new int[arr.Length];
            for (int i = 0; i < arr1.Length - 1; i++)
            {
                arr1[i] = arr[arr.Length - i - 1];
            }
            return arr1;
        }
       //缺点:此方法在内存中重新开辟了一块内存空间来存储数组大小,如果数组比较大,很消耗内存空间

2.优化:在原数组上进行修改,第一个元素和最后一个元素对调,第二个和倒数第二个对调,依次内推。

csharp 复制代码
       public static void InvertArray(int[] arr)
        {
            //arr.length/2,只需要对调元素个数的一般,元素奇数个和偶数个不影响
            for (int i = 0; i < arr.Length / 2; i++)
            {
                int temp = arr[i];
                arr[i] = arr[arr.Length - 1 - i];
                arr[arr.Length - 1 - i] = temp;
            }
        }
相关推荐
choumou_M11 小时前
算法_1:由浅入深学习快速排序QuickSort
学习·算法·排序算法
Coder_Shenshen12 小时前
罗克韦尔ACD工程归档离线变量树解析
算法·c#
寂寞的船17 小时前
【Unity知识速递】第10期 Unity GC 零分配实战:从 UnityEngine.Pool 到手动 GC 控制的全链路优化
jvm·unity·c#·游戏引擎·lucene
1-1=021 小时前
C# 数据结构和特殊类型
数据结构·c#·.net·.netcore
波力海苔夹心脆6753 天前
C# WPF 资源字典详解:ResourceDictionary、MergedDictionaries 与自定义控件案例
开发语言·c#·wpf·入门教程·resource·资源字典
AI导出鸭PC端3 天前
Perplexity批量导出没有PDF模式?AI导出鸭插件补上最后一块拼图
人工智能·pdf·c#·ai导出鸭
Risehuxyc3 天前
C# 选用更流行的语言版本
c#
淡海水4 天前
09-04-内存-Unity原生对象生命周期
unity·c#·游戏引擎·gc
bro_Java6664 天前
《排序的底层逻辑:比较、交换与分治》
java·算法·排序算法
careathers4 天前
【数据结构】基于比较的排序算法 - 交换排序
数据结构·算法·排序算法