其他分享
首页 > 其他分享> > JC1 排序模拟枚举

JC1 排序模拟枚举

作者:互联网

一、估算复杂度

  1. 关于时间复杂度

    可以估计:电脑一秒之内执行1亿次运算。

    根据经验,如果时间复杂度算出来在2000w 以下,一般可以认为 1s 之内能跑出来;20亿以上考虑换一个算法。

  2. 关于空间复杂度

   爆空间(MLE)会喜提零分

   在递归的函数里乱开数组可能会爆空间(开全局变量啊)

二、排序

  1. 选择排序
     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 
     4 int a[10]={2, 5, 3, 1, 4};
     5 int n=5;
     6 
     7 int main()
     8 {
     9     for(int i=0; i<n; i++){
    10         int x=i;
    11         for(int j=i; j<n; j++)
    12             if(a[x]>a[j])
    13                 swap(a[j], a[x]);
    14         for(int j=0; j<n; j++)
    15             cout<<a[j]<<' ';
    16         puts("");
    17     }
    18     return 0;
    19 }
    SelectSort

     

  2. 冒泡排序

标签:JC1,之内,int,复杂度,冒泡排序,枚举,空间,排序
来源: https://www.cnblogs.com/mianing/p/12523861.html