温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

最简单的排序算法(C和C++实现)

发布时间:2020-05-30 19:01:17 来源:网络 阅读:547 作者:YU儿 栏目:编程语言

1、算法思想如下图:

最简单的排序算法(C和C++实现)

把待排序的数都存在对应的数组的下标中,如果待排序的数有重复的,就用对应的数组加一,最后把数组的下标打印出来即可。

2、源码(C)如下:

#include <stdio.h>

int main (void)

{

    int a[100], i, j, t, n;

//初始a[i]为0 

for (i = 0; i <= 100; i++)

{

   a[i] = 0;

}

   scanf ("%d", &n);

for (i = 1; i <= n; i++)

{

scanf ("%d", &t);

a[t]++; // 进行计数,即出现了多少次 

}

//i初值为100,先打印最大的下标 

for (i = 100; i >= 0; i--)

{

//如果a[i]等于1,怎么说明该数出现一次,a[i]大于1说明出现多次 

for (j = 1; j <= a[i]; j++)

{

printf ("%d ", i);

}

getchar();

return 0;

}

3、源代码(C++)如下:

#include <iostream>

using namespace std;

int main (void)

{

int a[101], i, j, t, n;

//初始a[i]为0 

for (i = 0; i <= 100; i++)

{

  a[i] = 0;

}

  cin >> n;

for (i = 1; i <= n; i++)

{

    cin >> t;

a[t]++; // 进行计数,即出现了多少次 

}

//i初值为100,先打印最大的下标 

for (i = 100; i >= 0; i--)

{

//如果a[i]等于1,怎么说明该数出现一次,a[i]大于1说明出现多次 

for (j = 1; j <= a[i]; j++)

{

cout << i << endl;

}

 return 0;

}


















向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI