1.冒泡排序:比如对十个数字进行排序,将相邻的两个数进行比较,如果第一个数大于第二个数,将两值对换,最后把最大的一位放在最后一位,然后再将剩余的九个数在进行相同的对换。        所以n个数需要n-1趟比较,第一趟进行n-1次两两比较,第j趟进行n-j趟,最终的结果是将这些数从小到大进行排列。

#include <stdio.h>
int main()
{
     int a[10];
     int i,j,t;
     printf("input 10 numbers:\n");
     for(i=0;i<10;i++)
     scanf("%d",&a[i]);
     for(j=0;j<9;j++)//进行n-1次比较的循环,n个数进行n-1次 
     {
         for(i=0;i<9-j;i++) //每一次要进行多少趟的比较,第j趟进行n-j趟
        {
             if (a[i]>a[i+1])
             {
             t=a[i];a[i]=a[i+1];a[i+1]=t;//当上面的数大于下面的时候,进行两两调换,拿t当作中间变量 
            }
        }
    }
        printf("the sorted number:\n");
        for(i=0;i<10;i++)//这个循环其实是对10组数的输出 
        {
            printf("%d ",a[i]);
        }
        printf("\n");
}

2.比如对n个数排序(从大到小),先找出n个中最大的数,放在a[0],然后在找其余n-1个数中最大的,放在a[1].....即可

a[0]与a[1]-a[9]的数进行比较,将最大值放置a[0];然后a[1]与a[2]-a[9]的数进行比较,最大值放在a[1],,,,,a[8]与a[9]进行比较。

#include <stdio.h>
int main()
{
    int i,j,x=10,t,a[10];
    for(i=0;i<x;i++)
    scanf("%d",&a[i]);
    
    for(i=0;i<x;i++)
    {
        for(j=i+1;j<x;j++)
        {
            if(a[i]<a[j])//从大到小 
            {
                t=a[i];
                a[i]=a[j];
                a[j]=t;
            }
        }
    } 
    for(i=0;i<x;i++)
    printf("%d ",a[i]);
}

对于数字的排序(数组形式)相关推荐

  1. 剑指offer:数字在排序数组中出现的次数

    题目描述 统计一个数字在排序数组中出现的次数. 解题思路 暴力求解,没用到排序的已知条件. class Solution { public:int GetNumberOfK(vector<int ...

  2. 【剑指offer-Java版】38数字在排序数组中出现的次数

    数字在排序数组中出现的次数: 最简单粗暴的方法是O(n^2) 可能的解法可以采用二分,首先根据二分找到给定数字在数组中的位置,然后再左右二分,找到边界(第一个和最后一个),左右边界的差值就是出现次数 ...

  3. 面试题整理11 数字在排序数组中出现的次数

    <剑指offer>面试题38: 题目:统计一个数字在排序数组中出现的次数.例如输入排序数组{1,2,3,3,3,3,4,5}和数字3,由于3在此数组中出现了4次,因此输出4. 分析:看到排 ...

  4. 【C语言】数字在排序数组中出现的次数(改动)

    //数字在排序数组中出现的次数(改动) //统计一个数字在排序数组中出现的次数.比如:排序数组{1,2,3,3,3.3,4,5}和数字3,因为3出现了4次,因此输出4. #include <st ...

  5. 剑指Offer(Java版):数字在排序数组中出现的次数

    2019独角兽企业重金招聘Python工程师标准>>> 题目:统计一个数字在排序数组中出现的次数.例如输入排序数组为 {1,2,3,3,,3,3,4,5}和数字3,由于3在这个数组中 ...

  6. 37.数字在排序数组出现的次数

    题目描述:   统计一个数字在排序数组中出现的次数. 思路分析:   由题目知道这道题是属于排序数组中的查找问题,那么我们首先想到的就是二分查找.由于要在排序数组中找一个数字出现的次数,那么我们只要确 ...

  7. 《剑指offer》-- 调整数组顺序使奇数位于偶数前面、顺时针打印矩阵、数字在排序数组中出现的次数

    一.调整数组顺序使奇数位于偶数前面: 1.题目: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之 ...

  8. 【剑指offer】数字在排序数组中出现的次数

    转载请注明出处:http://blog.csdn.net/ns_code/article/details/27364557 题目描写叙述: 统计一个数字在排序数组中出现的次数. 输入: 每一个測试案例 ...

  9. 《剑指offer》数字在排序数组中出现的次数

    题目:统计一个数字在排序数组中出现的次数. 解析:不要怀疑你的眼睛,也不用怀疑这题目难度,直接干! public class Solution {public int GetNumberOfK(int ...

  10. 数据结构与算法--数字在排序数组中出现次数

    数字在排序数组中出现次数 题目:统计一个数字在一个排序数组中出现的次数.例如,输入数组{1,2,3,3,3,3,3,4,5} 和数字3,由于3 在数组中出现的次数是5,因此返回5 简单方案一 既然输入 ...

最新文章

  1. 自学了python基础英语_Python自学路线图之Python基础自学
  2. 腾讯美团爱奇艺等10+大厂面试题汇总!
  3. android运行jar文件路径,java命令行执行jar包报错解决
  4. IDaaS企业身份管理训练营火热报名中 体验新一代企业云身份服务
  5. mysql 数据分析的步骤_数据分析8个主要步骤
  6. 上传文件和提交textfield_0基础掌握Django框架(37)文件上传
  7. Linux下系统与硬件时钟管理
  8. iOS开发,多个button数组,每个数组只能选中5项,多个数组只能选择3个。
  9. dataGridView1.DataSource多增加列,数据不进自己规定的列?
  10. 【报告分享】5G赋能中国智慧城市白皮书.pdf(附下载链接)
  11. IoT:BLE4.0教程一 蓝牙协议连接过程与广播分析
  12. jfreechart环形图完美实现
  13. 机器学习- 吴恩达Andrew Ng Week4 神经网络Neural Networks知识总结
  14. 47 jquery 计时器 选择器 筛选器 左边菜单栏
  15. 单片机常用外设驱动电路
  16. 设置路由器当作交换机使用
  17. IB中文诗歌手法分析
  18. 酷比魔方 iwork10旗舰版恢复出厂设置遇到的问题
  19. 夜拍王荣耀10 VS同档位旗舰机夜拍功能,实战结果一目了然!
  20. 防止360浏览器小窗下载视频

热门文章

  1. 语音识别(2): kws项目实现、数据集代码分析
  2. matlab矩阵乘法与点乘
  3. python中not的用法
  4. AI+RPA技术在反洗钱中的应用
  5. 1-3 MATLAB符号变量的使用、符号变量转为匿名函数、向量值匿名函数、符号变量转为向量值函数、结构体批量提取数据
  6. 秒杀Deepfake!微软北大提出AI换脸工具和假脸检测工具
  7. Centos7 安装 OpenStack 遇到过的错误
  8. 弱电怎么控制强电/怎么用单片机来控制交流电220V通断
  9. 项目中如何修改UI框架的默认样式
  10. 工业物联网IIoT环境下,为边缘计算提供的基于区块链的机械学习安全框架