题解 | #两种排序方法#

两种排序方法

https://www.nowcoder.com/practice/839f681bf36c486fbcc5fcb977ffe432

使用向量,类型为字符串vector<string> arr,判断这些字符串,是否按照长度、字典顺序排序正确;

设置lsort,csort标志位都为true;

当arr[i-1]>arr[i]时,将csort置为false;注意当使用C语言时,使用strcmp函数进行判断

当arr[i-1].size()>arr[i].size()时,将lsort置为false;

最后通过分支语句判断应该输出什么。

#include <iostream>
#include<vector>
using namespace std;

int main() {
    vector<string> arr;
    int n;
    cin>>n;
    arr.resize(n);
    for(auto &s: arr){
        cin>>s;
    }
    bool lsort=true,csort=true;
    for(int i=1;i<n;i++){
        if(arr[i-1]>arr[i]){
            csort=false;
            break;
        }
    }
    for(int i=1;i<n;i++){
        if(arr[i-1].size()>arr[i].size()){
            lsort=false;
            break;
        }
    }
    if(lsort&&csort){
        cout<<"both"<<endl;
    }else if(lsort){
        cout<<"lengths"<<endl;
    }else if(csort){
        cout<<"lexicographically"<<endl;
    }else{
        cout<<"none"<<endl;
    }
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

兄弟们,绩效自评一定得给自己打A啊!千万别谦虚给低分,不然领导正愁给谁高分,你这不就“主动请缨”了嘛,而且多数领导不会给你更高分。我几年前试用期绩效自评打了B,领导就给了同等级,还好是试用期。真别等领导主动给高评价!
准备进厂的劳伦斯很迷人:小学时候有个册子 自评 小组 老师 我谦虚打了个b 小组别人给我打b 老师来句我觉得能给他打a 但是小组长说他自评是b怎么能打高呢 那时候我才明白的道理
点赞 评论 收藏
分享
kl_我是东山啊:《相关公司:阿里巴巴》
投递阿里巴巴等公司10个岗位
点赞 评论 收藏
分享
2024-12-29 11:08
湖南工业大学 Java
程序员牛肉:简历没什么大问题了。 而且不要再换项目了。三月份就开暑期实习了,现在都一月份了。实在来不及重新开一下项目了。把一个项目写完或许很快,但是把一个项目搞懂吃透并不简单。所以不要换项目了,把你简历上面的两个项目好好挖一挖吧。 具体 体现在:你能不能流利的说出你的项目的每一个功能点代码实现?你能不能说出在这块除了A技术之外,还有其他技术能够实现嘛?如果有其他技术能够实现,那你这块为什么选择了你当前用的这个技术?
投递牛客等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务