上班之余抽点时间出来写写博文,希望对新接触的朋友有帮助。今天在这里和大家一起学习一下cmp排序

  1. /*标题还是比拟的水吧,但是花的时间还是比拟的多,心不够静*/
  1. #include <iostream>
  2. #include <algorithm>
  3. #define MAX 1001
  4. using namespace std;
  5. /*15MS 296K*/
  6. typedef struct _str
  7. {
  8. char *str;
  9. int len;
  10. }str;
  11.  
  12. int cmp(const void *a,const void *b)
  13. {
  14. if((*(str *)a).len!=(*(str *)b).len)
  15. return ((*(str *)a).len-(*(str *)b).len);
  16. else
  17. return strcmp((*(str *)a).str,(*(str *)b).str);
  18. }
  19.  
  20. int main()
  21. {
  22. char *a=new char[MAX];
  23. str *b;
  24. while(cin>>a)
  25. {
  26. b=new str[MAX];
  27. int index=0;
  28. int l=0;
  29. for(int i=0;i<(l=strlen(a));i++)
  30. {
  31. bool flag=false;
  32. if(a[i]=='5') continue;//一个5的情况
  33. while(i<l)
  34. {
  35. if(a[i]!='0')
  36. {
  37. break;
  38. }
  39. i++;
  40. }
  41.  
  42. char *s=new char[11];//断绝的s
  43. int j=0;
  44. while(i<l&&a[i]!='5')
  45. {
  46. s[j++]=a[i];
  47. i++;
  48. }
  49. if(j==0)
  50. {
  51. s[j++]='0';
  52. }
  53. s[j]='\0';
  54. b[index].len=j;
  55. b[index++].str=s;
  56. }
  57. qsort(b,index,sizeof(b[0]),cmp);
  58. for(int i=0;i<index-1;i++)
  59. cout<<b[i].str<<" ";
  60. cout<<b[index-1].str<<endl;
  61. delete []b;
  62. }
  63. return 0;
  64. }
    每日一道理
我拽着春姑娘的衣裙,春姑娘把我带到了绿色的世界里。
  1.  
  1. #include <iostream>
  2. #include <algorithm>
  3. #include <sstream>
  4. #define MAX 1001
  5. using namespace std;
  6. /*0MS 372K*/
  7. int cmp(const void *a,const void *b)
  8. {
  9. return ((*(int *)a)-(*(int *)b)); //小到大排序
  10. }
  11.  
  12. int main()
  13. {
  14. char *a=new char[MAX];
  15. while(cin>>a)
  16. {
  17. int *b=new int[MAX];
  18. int l=strlen(a);
  19. for(int i=0;i<l;i++)
  20. {
  21. if(a[i]=='5')
  22. a[i]=' '; //把5转化成空格
  23. }
  24.  
  25. //利用string流来消除空格
  26. stringstream sin(a);
  27. stringstream s;//把提出的string转化成int
  28. string num;
  29. int index=0;
  30. while(sin>>num)
  31. {
  32. s.clear();
  33. s<<num;
  34. int nnum;
  35. s>>nnum;
  36. b[index++]=nnum;
  37. }
  38.  
  39. qsort(b,index,sizeof(b[0]),cmp);
  40. for(int i=0;i<index-1;i++)
  41. cout<<b[i]<<" ";
  42. cout<<b[index-1]<<endl;
  43. }
  44. system("pause");
  45. return 0;
  46. }

/*首先说第一段代码:

run了很多次,然后出现很多的错误,这里总结一下:第一,cmp函数的错误应用,cmp表示的是(a,b)的巨细关系。第二:把每一个段给分出来是有几种情况还是没斟酌完全,斟酌问题的时候还是希望斟酌一下比拟特殊的情况。第三:坑爹的错误,presentation error这个我就不说什么了

第二段代码:

对于这类模式的程序是很好用的,把一串字符串转化成一串数字(double和int都可以)把数字加到一个字符串上去(总的来说就是触及字符串的添加删除操作都可以斟酌这个模板)

接下来就是闲话了:

昨天刚考完试,还没调整过去,要尽快的调整,心不够静。第二,写代码的时候还是不适于磕瓜子和出去逛。服膺。。。。。。。。*/

文章结束给大家分享下程序员的一些笑话语录: 问答
Q:你是怎么区分一个内向的程序员和一个外向的程序员的? A:外向的程序员会看着你的鞋和你说话时。
Q:为什么程序员不能区分万圣节和圣诞节? A:这是因为 Oct 31 == Dec 25!(八进制的 31==十进制的 25)

---------------------------------
原创文章 By
cmp和排序
---------------------------------

cmp排序hdoj 1106排序的更多相关文章

  1. hdoj 1106 排序

    排序 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submissi ...

  2. [大牛翻译系列]Hadoop(5)MapReduce 排序:次排序(Secondary sort)

    4.2 排序(SORT) 在MapReduce中,排序的目的有两个: MapReduce可以通过排序将Map输出的键分组.然后每组键调用一次reduce. 在某些需要排序的特定场景中,用户可以将作业( ...

  3. 对JavaScript对象数组按指定属性和排序方向进行排序

    引子 在以数据为中心的信息系统中,以表格形式展示数据是在常见不过的方式了.对数据进行排序是必不可少的功能.排序可以分为按单个字段排序和按多个字段不同排序方向排序.单字段排序局限性较大,不能满足用户对数 ...

  4. python 字典排序,列表排序详细

    在程序中使用字典进行数据信息统计时,由于字典是无序的所以打印字典时内容也是无序的.因此,为了使统计得到的结果更方便查看需要进行排序.Python中字典的排序分为按“键”排序和按“值”排序. 1.按“值 ...

  5. Go语言入门篇-基本类型排序和 slice 排序

    参见博客:https://blog.csdn.net/u010983881/article/details/52460998 package main import ( "sort" ...

  6. 算法与数据结构(十三) 冒泡排序、插入排序、希尔排序、选择排序(Swift3.0版)

    本篇博客中的代码实现依然采用Swift3.0来实现.在前几篇博客连续的介绍了关于查找的相关内容, 大约包括线性数据结构的顺序查找.折半查找.插值查找.Fibonacci查找,还包括数结构的二叉排序树以 ...

  7. 计数排序和桶排序(Java实现)

    目录 比较和非比较的区别 计数排序 计数排序适用数据范围 过程分析 桶排序 网络流传桶排序算法勘误 桶排序适用数据范围 过程分析 比较和非比较的区别 常见的快速排序.归并排序.堆排序.冒泡排序等属于比 ...

  8. 冒泡排序 & 选择排序 & 插入排序 & 希尔排序 JavaScript 实现

    之前用 JavaScript 写过 快速排序 和 归并排序,本文聊聊四个基础排序算法.(本文默认排序结果都是从小到大) 冒泡排序 冒泡排序每次循环结束会将最大的元素 "冒泡" 到最 ...

  9. 将1~n个整数按字典顺序进行排序,返回排序后第m个元素

    给定一个整数n,给定一个整数m,将1~n个整数按字典顺序进行排序,返回排序后第m个元素.n最大可为5000000.字典排序的含义为:从最高位开始比较.1开头的数字排在最前面,然后是2开头的数字,然后是 ...

随机推荐

  1. Android开发中常见的设计模式

    对于开发人员来说,设计模式有时候就是一道坎,但是设计模式又非常有用,过了这道坎,它可以让你水平提高一个档次.而在android开发中,必要的了解一些设计模式又是非常有必要的.对于想系统的学习设计模式的 ...

  2. Android-判断当前网络是否可用

    1.声明权限 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 2. ...

  3. HDU5731 Solid Dominoes Tilings 状压dp+状压容斥

    题意:给定n,m的矩阵,就是求稳定的骨牌完美覆盖,也就是相邻的两行或者两列都至少有一个骨牌 分析:第一步: 如果是单单求骨牌完美覆盖,请先去学基础的插头dp(其实也是基础的状压dp)骨牌覆盖 hiho ...

  4. IOS UIScrollView中 使用 touch 无法响应的问题

    添加一个 Category  然后在使用到 UIScrollView 的文件里面 导入这个头文件 就可以 // //  UIScrollView+UITouch.m //  alarm // //  ...

  5. IOC框架Ninject实践总结

    原文地址:http://www.cnblogs.com/jeffwongishandsome/archive/2012/04/15/2450462.html IOC框架Ninject实践总结 一.控制 ...

  6. jQuery常用的正则表达式

    [导读] 本文章提供了大量的jQuery正则表达式,有电话号码,密码,用户名,邮箱,哈能输入字符等,有需要的朋友可以参考一下. 代码如下复制代码 <!DOCTYPE html PUBLIC &q ...

  7. PHP $_SERVER的详细参数及说明

    $_SERVER['PHP_SELF']#当前正在执行脚本的文件名,与documentroot相关. $_SERVER['argv']#传递给该脚本的参数. $_SERVER['argc']#包含传递 ...

  8. 微信公众平台开发(57)Emoji表情符号

    微信公众平台开发 微信公众平台开发模式 企业微信公众平台 Emoji表情符号 作者:方倍工作室 地址:http://www.cnblogs.com/txw1958/p/crack-golden-egg ...

  9. [Hive - LanguageManual] Create/Drop/Alter Database Create/Drop/Truncate Table

    Hive Data Definition Language Hive Data Definition Language Overview Create/Drop/Alter Database Crea ...

  10. SSHFS

    SSHFS(SSH文件系统) 是一个文件系统客户端程序,使用它可以将远程服务器上的目录挂载在本地直接访问 可以在网站http://igikorn.com/sshfs-windows-8/内下载