[经验分享] 几个简单的C语言算法源程序

[复制链接]
772|6
 楼主| benjaminka 发表于 2024-1-21 21:01 | 显示全部楼层 |阅读模式
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4. #include <string.h>
  5. #define N 10


  6. void show(int a[],int n)
  7. {
  8.         int i;
  9.         for(i=0;i<n;i++)
  10.         {
  11.                 printf("a[%d]=%d\t",i,a[i]);
  12.         }
  13. }

  14. void bucket_sort(int *a,int n)
  15. {
  16.         int i,buckets[51];
  17.         for(i=0;i<51;i++)
  18.         {
  19.                 buckets[i]=0;
  20.         }
  21.       
  22.         for(i=0;i<n;i++)
  23.         {
  24.                 buckets[a[i]]++;
  25.         }

  26.         for(i=0;i<51;i++)
  27.         {
  28.                
  29.         if(buckets[i]!=0)
  30.         {
  31.                 static int j=0;
  32.                 a[j]=i;      
  33.                 buckets[i]--;
  34.                 printf("a[%d]=%d\t",j,i);
  35.                 j++;
  36.         }
  37.         }

  38. }

  39. int main()
  40. {
  41.         int i,a[N];
  42.         srand(time(NULL));
  43.         for(i=0;i<N;i++)
  44.         {
  45.                 a[i]=rand()%50;
  46.         }
  47.         printf(" old number:\n");
  48.         show(a,N);
  49.         printf(" new number:\n");
  50.         bucket_sort(a,N);

  51.         printf("\n");

  52.         return 0;
  53.       
  54. }


tpgf 发表于 2024-2-1 10:12 | 显示全部楼层
这都是涉及到哪些应用的算法啊
qcliu 发表于 2024-2-1 11:31 | 显示全部楼层
不知道有没有详细一点的注释进行说明
kxsi 发表于 2024-2-1 12:09 | 显示全部楼层
这个是进行连加计算的算法吗
wiba 发表于 2024-2-1 12:44 | 显示全部楼层
这个算法有什么明显的优点吗
coshi 发表于 2024-2-1 20:50 | 显示全部楼层
这个应该就是一个算法  具体的内容需要说一下
drer 发表于 2024-2-1 21:22 | 显示全部楼层
不是很清楚楼主的子函数的功能是什么
您需要登录后才可以回帖 登录 | 注册

本版积分规则

70

主题

1650

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部