排序一个数组要求时间复杂度为O(N)

来源:互联网 发布:js防水涂料 编辑:程序博客网 时间:2024/06/02 16:07
#define SIZE 65535void Sort(int* a, int len){    int *data=new int[SIZE];    memset(data, 0, sizeof(int)*SIZE);//这里必须先将开辟的数组空间初始化为0    if (a == NULL)    {        return;    }    int i = 0;    for (i = 0; i < len; i++)    {        data[a[i]]++;    }    int j = 0;    for (i = 0; i < SIZE; i++)    {        if (data[i] != 0)        {            while (data[i]--)//出现相同数            {                a[j++] = i;            }        }    }    delete[]data;//记得释放空间}
阅读全文
1 0
原创粉丝点击