设为首页 加入收藏

TOP

利用标准库中sort函数进行排序
2015-07-20 17:45:38 来源: 作者: 【 】 浏览:1
Tags:利用 标准 sort 函数 进行 排序

//1、利用sort进行由小到大排序:

#include
  
   
#include
   
     using namespace std; int main() { int a[10],i; for (i=0;i<10;i++) scanf("%d",&a[i]); sort(a,a+10); for (i=0;i<10;i++)printf("%d ",a[i]); return 0; }
   
  


//2、利用sort进行由大到小排序:

加上cmp函数即可,修改cmp函数(将‘>’改为‘<’)也可以进行由小到大排序,若没有cmp函数,默认是由小到大排序,如以上例子。

#include
  
   
#include
   
     using namespace std; int cmp(int a,int b) { if(a>b) return 1; else return 0; } int main() { int a[10],i; for (i=0;i<10;i++) scanf("%d",&a[i]); sort(a,a+10,cmp); for (i=0;i<10;i++)printf("%d ",a[i]); return 0; }
   
  

//3、利用sort对结构体一级排序:

如以下程序中,按照结构体中的x由小到大的顺序,对结构体排序。改变cmp函数中的比较符号,可以将排序改成按升序还是降序。

#include
  
   
#include
   
     #include
    
      #include
     
       using namespace std; struct In { int x; int y; }s[5]; bool cmp(In a ,In b) { return a.x
      
       
//4、利用sort对结构体二级排序:

如以下程序中,先按照结构体中的x由小到大的顺序,对结构体排序,如果x相等,在比较y。改变cmp函数中的比较符号,可以将排序改成按升序还是降序。

#include
        
         
#include
         
           #include
          
            #include
           
             using namespace std; struct In { int x; int y; }s[5]; int cmp(In a,In b) { if(a.x!=b.x) return a.x
            
             


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Codeforces 67A. Partial Teacher 下一篇HDU4064 Carcassonne(状态压缩DP)

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·如何利用Python做数 (2025-12-24 23:48:36)
·如何使用python进行 (2025-12-24 23:48:34)
·python 爬虫入门该怎 (2025-12-24 23:48:31)
·Java 实现多个大文件 (2025-12-24 23:22:00)
·Java多线程编程在工 (2025-12-24 23:21:56)