冒泡排序是排序方法中最简单的一种,但时间复杂度很高,是n的平方,笔试中一般使用快速排序。冒泡排序的代码如下:
#include <iostream> #include <cstring> using namespace std; void main() { int n; int num; int buf[100]; while ( scanf("%d", &n) != EOF) { for (int i = 0; i < n; i++){ scanf("%d", &buf[i]); } for (int i = 0; i < n; i++) { for (int j = 0; j < n - 1 - i; j++) { if (buf[j] > buf[j + 1]) { int tmp = buf[j]; buf[j] = buf[j + 1]; buf[j + 1] = tmp; } } } for (int i = 0; i < n; i++){ printf("%d ", buf[i]); } } }上机笔试系类教程: 【上级笔试之一】数据输入 【上机笔试之二】冒泡排序 【上机笔试之三】快速排序 【上机笔试之四】快速排序(2) 【上机笔试之五】计算两个日期的差值 【上机笔试之六】Hash应用 【上机笔试之七】Hash应用(2)-从大到小顺序输出其中前m大的数 【上机笔试之八】二分法查找 【上机笔试之九】贪心算法-换零钱 【上机笔试之十】栈应用-扣号匹配