数据排序 第1课时
数据排序 第1课时
serverDream&SepiaTruck34735[引入]
信息获取后通常需要进行处理,处理后的信息其目的便于人们的应用。信息处理方法有多种,通常有数据的排序、查找、插入、删除、归并等操作。
[STD库的排序方法]
STD库中存在一个排序函数,叫sort
,这个函数在库algorithm
(通过代码#include<algorithm>
导入)
sort函数的使用方法
1 | sort(头指针,尾指针); |
举例:将a数组的下表为1~n项排序
1 | sort(a+1,a+n+1);//下表从0开始 |
[选择排序]
<基本思想>
每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在待排序的数列的最前面,直到全部待排序的数据元素都排序完。
<代码实现>
1 | int a[20005]; |
[冒泡排序]
<基本思想>
冒泡排序的基本思想 冒泡排序是交换排序中一种简单的排序方法。 它的基本思想是对所有相邻记录的关键字值进行比效,如果是逆顺(a[j]>a[j+1]),则将其交换,使最大(或最小)的元素冒到最后的那个位置,最终达到有序化。
<代码实现>
1 | int a[20005]; |
[今日作业]
完成下列题目的代码,禁止照抄上面代码(三种方法都使用一遍),写完请发给我。
谁考了第k名
【题目描述】
在一次考试中,每个学生的成绩都不相同,现知道了每个学生的学号和成绩,求考第k名学生的学号和成绩。
【输入】
第一行有两个整数,分别是学生的人数n(1≤n≤100),和求第k名学生的k(1≤k≤n)。
其后有n行数据,每行包括一个学号(整数)和一个成绩(浮点数),中间用一个空格分隔。
【输出】
输出第k名学生的学号和成绩,中间用空格分隔。(注:请用%g输出成绩)
【输入样例】
1 | 5 3 |
【输出样例】
1 | 90788004 68.4 |
关于
本篇文章作者是serverDream。
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果