C#算法之插入排序算法

embedded/2024/9/23 8:14:21/

        算法系列:各位朋友,我们继续C#算法的学习之路。今天同样是一个简单直观的排序算法--插入排序。插入排序的原理是通过构建有序序列,对未排序序列进行扫描,找到相应位置并插入。插入排序,在数据规模较小或者部分数据已经处于有序的情况下,其效率很高。

        插入排序的事件复杂度不唯一,平均值为n的平法,其中n是列表的长度。空间复杂度为1。

        C#简单例程如下:

    static void Main(){int[] array = { 3, 5, 1, 4, 6, 2 };Console.WriteLine("原始数组:");foreach (int item in array){Console.Write(item + " ");}Console.WriteLine();InsertionSort(array);Console.WriteLine("排序后的数组:");foreach (int item in array){Console.Write(item + " ");}}static void InsertionSort(int[] array){int n = array.Length;for (int i = 1; i < n; i++){int key = array[i];int j = i - 1;// 将较大的元素向后移动while (j >= 0 && array[j] > key){array[j + 1] = array[j];j--;}// 将key插入到正确的位置array[j + 1] = key;}}


http://www.ppmy.cn/embedded/20878.html

相关文章

linux redis 开机自启

安装位置/data/redis访问端口6379配置文件地址/data/redis/bin/ make PREFIX/data/redis install cp redis.conf /data/redis/bin/ cd /data/redis/bin/ ./redis-server /data/redis/bin/redis.conf 配置redis跟随系统启动自动启动 将redis_init_script脚本拷贝到linux的/etc…

ubuntu22.04安装TensorRT(过程记录)

重要说明&#xff1a;此贴经过多次修改。第一次安装的的为trt8.6.1版本。第二次安装的10.0.0.6版本。有些地方可能没改过来&#xff0c;比如链接向导&#xff0c;我懒得改了&#xff0c;但是流程是对的。 cuda和cudnn版本对应关系 tensorRT历史发行版本 CUDA历史发行版本 cudn…

效率工具RunFlow完全手册之局域网传输篇

本篇将向您介绍如何使用RunFlow在局域网&#xff08;又称内网&#xff09;内传输文件&#xff0c;同步剪贴板&#xff0c;无论是家庭局域网还是办公室局域网&#xff0c;都能轻松搞定文件传输以及剪贴板同步&#xff0c;如果您还没有安装RunFlow&#xff0c;可点这里去下载。 为…

相亲交友APP小程序H5系统婚恋交友社交软件开发语音视频聊天平台定制开发

产品亮点 随着移动互联网的到来&#xff0c;人们的交友方式也呈现了更多新鲜的方式&#xff0c;很多人通过手机app结交了更多的新朋友。当然个例是不能代表整体的&#xff0c;仍然有着很大的一部分的人不知道如何交友&#xff0c;对于交友更是一窍不通&#xff0c;面对这样广阔…

【JavaEE初阶系列】——网络层IP协议(地址管理和路由选择)

目录 &#x1f6a9;网络层 &#x1f388;IP协议 &#x1f469;&#x1f3fb;‍&#x1f4bb;IP协议"拆包组包"功能 &#x1f388;地址管理 &#x1f469;&#x1f3fb;‍&#x1f4bb;IP地址的分类 &#x1f469;&#x1f3fb;‍&#x1f4bb;NAT机制如何工作的…

【Unity动画系统】动画状态基本属性与相关API、IK简单概述

动画状态基本属性与相关API Tag&#xff1a;判断是否当前播放着相对应Tag的动画&#xff0c;如果是&#xff0c;那么玩家的输入就是无效的。 using UnityEngine.InputSystem;public AnimatorStateInfo stateInfo;void State(){//stateInfo animator.GetCurrentAnimatorStateIn…

it运维管理平台:设备管理与网络监控方案

在当今高度信息化的社会&#xff0c;企业的运营越来越依赖于复杂的信息系统。这些系统的稳定性和性能直接关系到企业的业务连续性和客户满意度。为了确保这些关键业务系统的顺畅运行&#xff0c;运维团队需要依靠先进的设备管理与网络监控工具。在此&#xff0c;推荐监控易智能…

自然语言处理的发展及归纳介绍

NLP简介 自然语言处理&#xff08;Natural Language Processing&#xff0c;NLP&#xff09;是人工智能领域的一个重要分支&#xff0c;旨在使计算机理解、解释和生成人类语言。NLP的产生背景可以追溯到上世纪50年代&#xff0c;随着计算机科学和人工智能领域的发展&#xff0c…