Oneday01 | ~scanf、冒泡排序、sort排序

  • ~scanf
  • 冒泡排序
  • STL sort排序

~scanf

while(~scanf("%d%d",&a,&b)){}   /*~scanf("%d%d",&a,&b)的返回值永不为0*/
  • ~是按位取反
    scanf返回的是成功读取的参数的个数
    如果读取失败则继续循环,否则(如果读取成功)则退出循环。
    可用于跳过不想要的内容而直接读取想要匹配的内容。

  • scanf("%d %d",&a,&b);
    函数返回值为int型。如果a和b都被成功读入,那么scanf的返回值就是2;
    如果只有a被成功读入,返回值为1;
    如果a和b都未被成功读入,返回值为0;
    如果遇到错误或遇到end of file,返回值为EOF(-1)。end of file为Ctrl+z 或者Ctrl+d。

冒泡排序

#include<bits/stdc++.h>
using namespace std;
#define swap(a,b) {int temp = a;a = b; b = temp;} //交换
int n;
int a[100001];    //记录数字
void bubble_sort(){  //冒泡排序,结果仍放在a[]中for(int i=1;i<=n-1;i++){for(int j=1;j<=n-i;j++){if(a[j]>a[j+1])swap(a[j],a[j+1]);}}
}
int main(){scanf("%d ",&n);for(int i=1;i<=n;i++){scanf("%d",&a[i]);}bubble_sort();for(int i=1;i<=n;i++){printf("%d ",a[i]);}return 0;
}

STL sort排序

#include<bits/stdc++.h>
using namespace std;
int n;
int a[100001];int main(){scanf("%d ",&n);for(int i=1;i<=n;i++){scanf("%d",&a[i]);}sort(a+1,a+n+1,less<int>());for(int i=1;i<=n;i++){printf("%d ",a[i]);}return 0;
}
  • sort 的前两个参数是起始地址中止地址
    如:sort(a,a+n) 表示对 a[0] … a[n-1] 排序
    第三个参数是一个比较函数,可以调用 greaterless 进行降/升序排序

小伙伴们,强烈安利一波

Oneday01 | ~scanf、冒泡排序、sort排序相关推荐

  1. js数组sort排序原理

    大家都知道javascript的数组有sort排序方法,可以实现升序与降序,现在我们来学习一下sort方法排序的原理冒泡排序. 冒泡排序:拿数组的当前项和后一项比较,如果当前项大于后一项,两者交换位置 ...

  2. 【排序算法】冒泡排序|选择排序|插入排序|希尔排序

    文章目录 冒泡排序 选择排序 插入排序 希尔排序 冒泡排序   第一个元素开始向第二个元素比较,若大于则交换位置,不大于则不动.然后第二个元素和第三个元素比较,再然后第三个元素和第四个元素比较-一直比 ...

  3. C++ sort() 排序函数

    本文参考的博客链接 PAT排序例题A1025 经典排序算法 算法总目录 一.简介 1.头文件:#include 2.时间复杂度:sort在实现中规避了经典快速排序中可能出现的会导致实际复杂度退化到O( ...

  4. 1)输入一个数组,求子数组最大值 2)xx 3)利用冒泡排序法排序

    1) 解题思路: 首先,输入数组元素,循环判断是否为顺序子数组,若是,累加元素并判断它的下一位与下两位的大小关系 ,若不是,则重新累加元素,然后将子数组输出,最后判断子数组大小即可 遇到的问题: 需要 ...

  5. C++的STL库,vector sort排序时间复杂度 及常见容器比较

    http://www.cnblogs.com/sthv/p/5511921.html http://www.169it.com/article/3215620760.html http://www.c ...

  6. 关于学习Python的一点学习总结(5->切片赋值->sort排序->列表操作)

    16.给切片赋值: >>> test=list('hello')>>> test['h', 'e', 'l', 'l', 'o']>>> test ...

  7. layui 自定义排序_浅谈layui中table的sort排序

    table模块是layui框架最核心的组成之一,它用于对表格进行一些列功能和动态化数据操作,本文介绍了layui中table的sort排序,解决了在我们使用sort排序时可能遇到的一些问题. 今天来谈 ...

  8. 关于Lucene的自定义Sort排序

    参考:http://blog.csdn.net/wxwzy738/article/details/8585786 使用Sort排序工具实现排序  Lucene在查询的时候,可以通过以一个Sort作为参 ...

  9. 冒泡排序选择排序插入排序

    目录 冒泡排序 选择排序 插入排序 冒泡排序 冒泡排序(最好是O(n), 最坏O(n2)) 原理: 拿自己与上面一个比较,如果上面一个比自己小就将自己和上面一个调换位置,依次再与上面一个比较,第一轮结 ...

最新文章

  1. 20分钟一键自动化部署10台集群规模实战(隆重分享)
  2. RxJava 教程第一部分:为何使用RxJava
  3. 《塞尔达传说:旷野之息》技术分析:神作是怎么炼成的
  4. docker概念很乱?俺来替你理一下!
  5. python入侵数据库数据库_一个简单的Python访问Mysql数据库例子
  6. python中的封装调用_Python基础之封装
  7. 链接脚本在编程中的高级运用之一:可变长数组
  8. Centos网络管理(三)-网络配置相关
  9. 详谈利用系统漏洞及mysql提权
  10. RN style的常用布局页面属性
  11. PythonOperator、BashOperator以及Xcom使用
  12. 给电脑C盘系统盘瘦身的四种方法
  13. Android源码中的目录结构详解
  14. 你的电脑被黑客黑过吗?
  15. python tkinter编写界面,使用win32com操作excel获取数据生成截图后,wxpy登录微信,给租客发送房租(三)
  16. java写一个登录系统_用java写一个用户登陆界面
  17. 宏碁Acer K50-20-55Z3拆机 +取下主板CMOS电池放电重新进入BIOS成功
  18. 苏大微型计算机原理与应用题库,苏大单片机原理及应用试卷.doc
  19. LPC1788和LPC1768时钟配置的差异
  20. Web Services 应用开发学习笔记(三):XML模式定义

热门文章

  1. 六个方法帮你写走心的文案
  2. 「计算机基础」进制转换
  3. 卷积神经网络( CNN)与全卷积神经网络(FCN)
  4. cath数据库fasta备注_sam's note
  5. 区间DP小结(附经典例题)
  6. 使用pip安装模块时提示: No module named pip
  7. 从业务架构师角度看区块链为什么以及如何改变世界
  8. 微信小程序——个人版微信小程序与企业版微信小程序区别
  9. JavaScript实现模糊匹配
  10. 安卓盒子装mysql_小白学mysql第一天:mysql安装