HDOJ2020 绝对值排序
2012-11-24 17:48
281 查看
绝对值排序
这道题目很适合用冒泡排序来解决。Post Code:
#include <iostream> #include <cmath> using namespace std; int main(){ int n; int a[101]; while(scanf("%d",&n)&&n!=0){ for(int i=0;i<n;i++){ scanf("%d",&a[i]); } //用的是冒泡排序法,每次把绝对值最大的那个数往最右移,然后输出最右的那个数。 //swap是库函数,用来交换两个变量的值,也可以自己来写这个函数。 for(int j=n-1;j>=0;j--){//两个for循环就是冒泡排序的过程。 for(int k=0;k<j;k++){//j用来表示每一次冒泡排序时循环的最大次数。j初始值为n-1,因为数组下标是从0开始的。 if(abs(a[k])>abs(a[k+1])) swap(a[k],a[k+1]); } printf(j==0?"%d\n":"%d ",a[k]);//k==j时跳出内层的for循环,此时a[k]就是最后一个数,直接输出。进入下一个外层for循环。 } } return 0; }
相关文章推荐
- hdoj_2020 绝对值排序
- HDOJ 2020 绝对值排序
- Hdoj 2020 绝对值排序
- HDOJ 2020 绝对值排序(简单排序)
- 绝对值排序 hdoj2020
- hdoj 2020 绝对值排序
- HDOJ 2020 绝对值排序
- hdoj 2020 绝对值排序——两种做法
- Hdoj2020_绝对值排序
- c++ hdoj 2020 (绝对值排序)
- hdoj 2020 绝对值排序
- HDOJ 2020 绝对值排序 (水)
- hdoj 2020 (java)绝对值排序(Math.abs()函数应用以及数组冒泡排序)
- HDOJ 2020 绝对值排序
- hdoj2020绝对值排序(srot)
- (HDOJ 2020)绝对值排序
- HDOJ2020 ( 绝对值排序 ) 【水题】
- HDOJ 2020 绝对值排序
- HDOJ 2020 绝对值排序!
- HDOJ2020绝对值排序