首页 > 编程语言 >排序算法总结

排序算法总结

时间:2024-02-17 23:33:34浏览次数:36  
标签:总结 int 复杂度 flag da ++ 算法 排序 data

冒泡排序 稳定排序 时间复杂度o(n2) 空间复杂度o(1)

点击查看代码
        static void BubbleSort()
        {
            int[] data = { 1, 8, 5, 7, 9, 4, 6, 99, 88, 74 };
            int i, j, flag;//岗哨模式的冒泡排序
            for (i = data.Length - 1; i > 0; i--)
            {
                flag = 0;
                for (j = 0; j < i; j++)
                {
                    if (data[j] > data[j + 1])
                    {
                        data[j] = data[j] ^ data[j + 1];
                        data[j + 1] = data[j] ^ data[j + 1];
                        data[j] = data[j] ^ data[j + 1];
                        flag++;
                    }
                }
                if (flag == 0)
                {
                    break;
                }
            }
            foreach (int da in data)
            {
                Console.Write(da + " ");
            }
        }

选择排序 不稳定排序 时间复杂度o(n2) 空间复杂度o(1)

点击查看代码
        static void SelectionSort()
        {
            int[] data = { 1, 8, 5, 7, 9, 4, 6, 99, 88, 74 };
            int i, j, flag;//岗哨模式的冒泡排序 
            for (i = 0; i < data.Length - 1; i++)
            {
                for (j = i + 1; j < data.Length; j++)
                {
                    if (data[i] > data[j])
                    {
                        data[i] = data[i] ^ data[j];
                        data[j] = data[i] ^ data[j];
                        data[i] = data[i] ^ data[j];
                    }
                }
            }
            foreach (int da in data)
            {
                Console.Write(da + " ");
            }
        }

插入排序 稳定排序 时间复杂度o(n2) 空间复杂度o(1)

点击查看代码
        static void InsertionSort()
        {
            int[] data = { 1, 8, 5, 7, 9, 4, 6, 99, 88, 74 };

            int i, j, temp;
            for (i = 1; i < data.Length; i++)
            {
                temp = data[i];
                j = i - 1;
                while (j >= 0 && data[j] > temp)
                {
                    data[j + 1] = data[j];
                    j--;
                }
                data[j + 1] = temp;
            }

            foreach (int da in data)
            {
                Console.Write(da + " ");
            }
        }

标签:总结,int,复杂度,flag,da,++,算法,排序,data
From: https://www.cnblogs.com/caoruipeng/p/18018617

相关文章

  • 冒泡排序
    需求冒泡排序,把数组从小到大进行排列思路总结冒泡排序采用双循环,i循环代表要排序几趟,j循环代表一趟要排序几次;有n个数要排n-1趟,一趟n-i次(因为前面排过的数字不必再排);冒泡排序算法思路图(bubble):代码实现packagecom.jichu.Arry;importjava.util.Arrays;publiccla......
  • 2.17集训总结
    今天上午干的树形dp,全部干完了,最后一题#选课待复盘。下午整理五个基础dp,相当于整理了一下午改错本,我解决了3个dp,整理的自己相对满意。这是我的整理。晚上在AcWing上打了一次周赛,第一题大水,轻松ac,这次周赛比上次要简单些,但第二题打了一个小时还是有3个样例没过。衡实饭就是好吃,听......
  • 每日总结
    Scala运算符一个运算符是一个符号,用于告诉编译器来执行指定的数学运算和逻辑运算。Scala含有丰富的内置运算符,包括以下几种类型:算术运算符关系运算符逻辑运算符位运算符赋值运算符接下来我们将为大家详细介绍以上各种运算符的应用。算术运算符下表列出了......
  • Python 机器学习 逻辑回归算法
    ​ 1、理解逻辑回归逻辑回归建立在线性回归之上。在线性回归中,模型预测的是一个连续的数值。而在逻辑回归中,线性回归的输出被输入到Sigmoid函数中,用于预测某个类别的概率。Sigmoid函数是一个S形的曲线,它将任意实数映射到(0,1)区间,适合用来表达概率。逻辑回归广泛应用于各种......
  • 【机器学习】机器学习常见算法详解第4篇:KNN算法计算过程(已分享,附代码)
    本系列文章md笔记(已分享)主要讨论机器学习算法相关知识。机器学习算法文章笔记以算法、案例为驱动的学习,伴随浅显易懂的数学知识,让大家掌握机器学习常见算法原理,应用Scikit-learn实现机器学习算法的应用,结合场景解决实际问题。包括K-近邻算法,线性回归,逻辑回归,决策树算法,集成学习,聚......
  • DP总结
    DP总结DP(动态规划)简介动态规划是一种通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。由于动态规划并**不是某种具体的算法**,而是一种解决特定问题的方法,因此它会出现在各式各样的数据结构中,与之相关的题目种类也更为繁杂。DP基础1.必要前提 需要满足三个......
  • 【测试运维】性能测试经验文档总结第3篇:VuGen详解(已分享,附代码)
    本系列文章md笔记(已分享)主要讨论性能测试相关知识。入门阶段:认识性能测试分类-(负载测试、压力测试、并发测试、稳定性测试),常用性能测试指标-(吞吐量、并发数、响应时间、点击数...),性能测试工具选择。性能脚本:1.LoadRunner介绍,2.脚本录制、运行、参数化,3.关联、检查点、事务......
  • 【测试运维】性能测试经验文档总结第3篇:VuGen详解(已分享,附代码)
    本系列文章md笔记(已分享)主要讨论性能测试相关知识。入门阶段:认识性能测试分类-(负载测试、压力测试、并发测试、稳定性测试),常用性能测试指标-(吞吐量、并发数、响应时间、点击数...),性能测试工具选择。性能脚本:1.LoadRunner介绍,2.脚本录制、运行、参数化,3.关联、检查点、事务......
  • 第三四周训练总结
    第三周是过年之前的最后一周,所以我也是憋足了劲写题。而第一次牛客组队合作写题也是令我印象深刻。虽然有点坐牢但合作的感觉还是不错的。题目也是难易分明,能在难题上看出自己的不足。而年前最后一次比赛似乎是想让我们过个好年,题目也变得简单了许多,但是有些简单的题我没把握好,确......
  • 【数据结构】串的表示与模式匹配算法
    串串是内容受限的线性表(栈和队列是操作受限的线性表)串(string)是零个或多个任意字符组成的有限序列S:串名a1a2a3...an:串值n:串长当n=0时,表示空串,空串用\(\phi\)表示子串:一个串中任意个连续字符组成的子序列(含空串)例如“abc”的子串有“”、“a”、“b”、"c"、"ab"......