首页 > 编程语言 >C# sort an array in a single loop in O(n)

C# sort an array in a single loop in O(n)

时间:2024-03-05 10:22:50浏览次数:18  
标签:sort arr temp C# System len int static array

using System;
using System.IO;
using System.Runtime.CompilerServices;


namespace ConsoleApp16
{
    internal class Program
    {
        static void Main(string[] args)
        {
            GenArray(100); 
        } 

        static int[] SortArray(int[] arr)
        {
            int len = arr.Length;
            for(int i=0;i<len-1;i++)
            {
                int temp1 = arr[i];
                int temp2= arr[i+1];
                if(temp1>temp2)
                {
                    int temp = arr[i];
                    arr[i] = arr[i + 1];
                    arr[i+1] = temp;
                    i = - 1;
                }
            }
            return arr;
        }

        static void GenArray(int len)
        {
            int[] arr = new int[len];
            Random rnd = new Random();
            for(int i=0;i<len;i++)
            {
                arr[i] = rnd.Next(0, Int32.MaxValue);
            }

            foreach(int i in arr)
            {
                Console.Write(i + "\t");
            }
            Console.WriteLine("\n\n\nAfter sort:");
            arr=SortArray(arr);
            foreach (int i in arr)
            {
                Console.Write(i + "\t");
            }
            Console.WriteLine();
        }
    }
}

  

 

 

static int[] SortArray(int[] arr)
{
    int len = arr.Length;
    for(int i=0;i<len-1;i++)
    {
        int temp1 = arr[i];
        int temp2= arr[i+1];
        if(temp1>temp2)
        {
            int temp = arr[i];
            arr[i] = arr[i + 1];
            arr[i+1] = temp;
            i = - 1;
        }
    }
    return arr;
}

 

标签:sort,arr,temp,C#,System,len,int,static,array
From: https://www.cnblogs.com/Fred1987/p/18053395

相关文章

  • Cold Turkey Blocker Pro 4.4版本免费使用
    ColdTurkeyBlockerPro4.4版本免费使用介绍最近在推进毕设,无奈自制力不强,总是沉浸在bilibili无法自拔....偶然在网上看到ColdTurkeyBlocker,自称为TheToughestWebsiteBlockerontheInternet,于是进行了关注。ColdTurkeyBlocker是一款电脑软件,主要用于帮助用户管理和......
  • SpringCloud2023最新版本该如何进行组件选型?
    前言Developingdistributedsystemscanbechallenging.Complexityismovedfromtheapplicationlayertothenetworklayeranddemandsgreaterinteractionbetweenservices.Makingyourcode‘cloud-native’meansdealingwith12-factorissuessuchasextern......
  • macOS14使用brew下载Redis时出现的问题和解决方法
    当我使用brew下载redis时系统:macOS14(base)hanxuxian@hanxuxiandeMacBook-Air~%brewinstallredis报错信息:Error:git:unknownorunsupportedmacOSversion::dunnoError:'git'mustbeinstalledandinyourPATH!Warning:YouareusingmacOS14.Wedon......
  • [转] C# 语言版本控制
    当使用新版本的语法糖时,编译器报错了: 参考:https://learn.microsoft.com/zh-cn/dotnet/csharp/language-reference/configure-language-version配置项目文件,添加如下蓝色配置后正常:<PropertyGroup><LangVersion>latest</LangVersion></PropertyGroup>默认值......
  • Oracle中不允许表的列名称使用Oracle声明的关键字! (ORA-01747: user.table.column, t
    1.问题ORA-01747:user.table.column,table.column或列说明无效--Oracle下,根据商品价格从高到低取4-6名商品SELECT*FROM( SELECTROWNUM,t1.* FROM( SELECTprod_name,prod_price FROMPRODUCTS ORDERBYPROD_PRICEDESC )t1 WHEREROWNUM<=6......
  • Reflect
    Reflect是一个为了替代Object的新语法现阶段,某些方法同时在Object和Reflect身上部署,但是未来的新方法将只部署在Reflect身上让Object操作都变成函数行为,某些Object操作是命令式的,比如nameinobj和deleteobj[name],而Reflect.has(obj,name)和Reflect.deleteProperty(obj,nam......
  • 乖乖,咱不用BeanUtil.copy了,咱试试这款神级工具(超详细)
    引言在现代Java应用程序开发中,处理对象之间的映射是一个常见而且必不可少的任务。随着项目规模的增长,手动编写繁琐的映射代码不仅耗时且容易出错,因此开发者们一直在寻找更高效的解决方案。比如基于Dozer封装的或者Spring自带的BeanUtil.copyProperties对应对象之间的属性拷贝。但......
  • java反编译工具CFR使用
    java-jarcfr-0.151.jar--helpjava-jarcfr-0.151.jarWindupClasspathTypeLoader.class结果输出到out文件夹java-jarcfr-0.151.jarWindupClasspathTypeLoader.class--outputpath./out反编译jar文件,结果输出到output_jar文件夹Desktopjava-jarcfr-0.151.jar......
  • etc/sudoers没有这个文件
    问题:root@debian:#ls-l/etc/sudoersls:cannotaccess'/etc/sudoers':Nosuchfileordirectory解决:当系统中不存在/etc/sudoers文件时,通常表示sudo配置文件丢失或损坏。sudoers文件包含了sudo命令的配置信息,用于定义哪些用户或组有权限以超级用户模式执行命令。......
  • comsol安装
    1.MountCOMSOLDVDintovirtualDVDdriveandstartinstallationwithsetup.exe可以解压缩或者mountiso文件2.Select"_SolidSQUAD_\LMCOMSOL_Multiphysics_SSQ.lic"toinstallCOMSOLMultiphysics--or--3.SelectComponents,Installationfolderandopti......