博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
排序4之计数排序
阅读量:5058 次
发布时间:2019-06-12

本文共 673 字,大约阅读时间需要 2 分钟。

程序一:

#include <stdio.h>
#include <string.h>
#define M 10001  //看完程序后想想这个M干嘛用的,可以去看看哈希算法噢
#define N 10
int main()
{


    int a[N],b[M];
    int i,n;
    memset(b,0,sizeof(b));
    for(i=0;i<N;i++)
      {

          scanf("%d",&n);b[n]++;
      }
    for(i=0;i<M;i++)
      while(b[i]--)
        printf("%d ",i);
    return 0;
}
程序二:

#include <stdio.h>
#include <string.h>
#define M 10001
#define N 10
int main()
{


    int a[N],b[M];
    int i,n;
    memset(b,0,sizeof(b));
    for(i=0;i<N;i++)
      {

          scanf("%d",&n);b[n]++;
      }
    for(i=1;i<M;i++)
      b[i]+=b[i-1];
    for(i=N-1;i>=0;i--)
      a[b[i]--]=i+1;
    for(i=1;i<=N;i++)
      printf("%d ",a[i]);
    return 0;
}
对比下一下,然后看看程序二的输出结果,很有意思哦。后缀数组里会用到哦,这是一种算法思想!

转载于:https://www.cnblogs.com/372465774y/archive/2012/03/28/2421628.html

你可能感兴趣的文章
数据库事务的四大特性以及事务的隔离级别
查看>>
多线程、异步调用异常场景测试
查看>>
java 17 -2 set集合以及hashCode()的源码
查看>>
HDU 1150 Machine Schedule (二分图最小点覆盖)
查看>>
Vue:axios中POST请求传参问题
查看>>
计算机 和python 基础
查看>>
H5小内容(四)
查看>>
HDU 5458 Stability (树链剖分+并查集+set)
查看>>
自定义URL Protocol 协议
查看>>
第五章 二叉树(e5)重构
查看>>
基于visual Studio2013解决算法导论之054图的邻接矩阵表示
查看>>
汇编实验三
查看>>
位运算实例
查看>>
java中关于String对象的解析
查看>>
Linux(二) 常用命令
查看>>
责任链模式
查看>>
一大盒子平均分为三个盒子
查看>>
VC++2012编程演练数据结构《34》树形选择排序
查看>>
Canvas--线条的属性
查看>>
.net集合类的研究--链表—ListDictionary,LinkedList<T>
查看>>