字符串排序——c++

题目描述:有n个字符串,将其从大到小依次输出(无空格)

这其实就是说,给你几个字符串,在不改变字符串本身的前提下组合成一个最大的数(或文段)

这就用到了c++中的一个知识:字符串排序(是的,字符串也可以排序)

排序规则:

比较的时候,从字符串左边开始,一次比较每个字符,直接出现差异、或者其中一个串结束为止。

比如ABC与ACDE比较,第一个字符相同,继续比较第二个字符,由于第二个字符是后面一个串大,所以不再继续比较,结果就是后面个串大。

再如ABC与ABC123比较,比较三个字符后第一个串结束,所以就是后面一个串大。

所以,长度不能直接决定大小,字符串的大小是由左边开始最前面的字符决定的。

废话不说了,上代码:

复制代码
#include <iostream>
#include <algorithm>
using namespace std;
string s[25];
bool cmp(string a,string b)
{
    return a>b;
}
int main()
{
    int n;
    cin >> n;
    for(int i=1;i<=n;i++)
    {
        cin >> s[i];
    }
    sort(s+1,s+n+1,cmp);
    for(int i=1;i<=n;i++)
    {
        cout << s[i];
    }
    return 0;
}
相关推荐
scx201310042 小时前
20250814 最小生成树和重构树总结
c++·算法·最小生成树·重构树
weixin_307779134 小时前
VS Code配置MinGW64编译SQLite3库
开发语言·数据库·c++·vscode·算法
励志不掉头发的内向程序员5 小时前
STL库——string(类函数学习)
开发语言·c++
浮灯Foden7 小时前
算法-每日一题(DAY13)两数之和
开发语言·数据结构·c++·算法·leetcode·面试·散列表
淡海水7 小时前
【原理】Struct 和 Class 辨析
开发语言·c++·c#·struct·class
青草地溪水旁9 小时前
UML函数原型中stereotype的含义,有啥用?
c++·uml
青草地溪水旁9 小时前
UML函数原型中guard的含义,有啥用?
c++·uml
光头闪亮亮11 小时前
C++凡人修仙法典 - 宗门版-上
c++
光头闪亮亮12 小时前
C++凡人修仙法典 - 宗门版-下
c++
John_ToDebug12 小时前
Chromium base 库中的 Observer 模式实现:ObserverList 与 ObserverListThreadSafe 深度解析
c++·chrome·性能优化