当前位置: 首页 > news >正文

算法题-字符串排序

题目描述

给定n个字符串,请对n个字符串按照字典序排列。

输入描述:

输入第一行为一个正整数n(1≤n≤1000),下面n行为n个字符串(字符串长度≤100),字符串中只含有大小写字母。

输出描述:

数据输出n行,输出结果为按照字典序排列的字符串。

输入

#输入 9 cap to cat card two too up boat boot

输出

#输出 boat boot cap card cat to too two up

#include <iostream>
#include <string>
#include <vector>
#include <string.h>using namespace std;
void mySort(vector <string> srcVector, int count);
int myCmp(string src1, string src2);
void mySwap(string *src1, string *src2);int main()
{int count = 0;vector <string> srcVector(100);cin >> count;for(int i = 0; i < count; i++)cin >> srcVector[i];mySort(srcVector, count);return 0;
}void mySort(vector <string> srcVector, int count)
{for(int i = 0; i < count; i++){for(int j = 0; j < count; j++){if(myCmp(srcVector[j], srcVector[j+1]) > 0){mySwap(&srcVector[j], &srcVector[j + 1]);}}}for(int i = 0; i < count; i++)cout << srcVector[i] <<endl;
}int myCmp(string src1, string src2)
{int len = 0;int ret = 0;len = (src1.size() > src2.size())?src2.size():src1.size();for (int i = 0; i < len; i++){if(strcmp(src1.c_str(), src2.c_str()) > 0){ret = 1;break;}else{ret = 0;break;}}return ret;
}void mySwap(string *src1, string *src2)
{string myString;myString = *src1;*src1 = *src2;*src2 = myString;
}

 

 

相关文章:

  • md5强弱碰撞
  • Java 五种内部类演示及底层原理详解
  • zibll-V7.7最新版2024完美破解授权可用(含授权教程)
  • Typescript高级: 深入理解Partial类型和Required类型
  • linux tomcat版本漏洞升级
  • B站如何屏蔽短视频:成都鼎茂宏升文化传媒公司
  • 从零开始实现自己的串口调试助手(3) - 显示底部收发,优化串口打开/关闭
  • Gitlub如何删除分支(删除远程分支+本地分支)
  • 彻底卸载Windows Defender
  • 童心与美食的邂逅,蒙自源邀你共绘梦想画卷
  • 使用YOLOv10训练自己的数据集
  • Java基础八股
  • opencv笔记(13)—— 停车场车位识别
  • 银行批量支付业务功能测试点详细介绍
  • C语言编程零基础:开启编程之旅的起点
  • 【mysql】环境安装、服务启动、密码设置
  • gitlab-ci配置详解(一)
  • GraphQL学习过程应该是这样的
  • HTTP--网络协议分层,http历史(二)
  • iOS仿今日头条、壁纸应用、筛选分类、三方微博、颜色填充等源码
  • Javascript弹出层-初探
  • Java基本数据类型之Number
  • Node + FFmpeg 实现Canvas动画导出视频
  • Python中eval与exec的使用及区别
  • vue-cli3搭建项目
  • 将回调地狱按在地上摩擦的Promise
  • 每个JavaScript开发人员应阅读的书【1】 - JavaScript: The Good Parts
  • 前端技术周刊 2019-01-14:客户端存储
  • 如何优雅的使用vue+Dcloud(Hbuild)开发混合app
  • 三栏布局总结
  • 学习使用ExpressJS 4.0中的新Router
  • 这几个编码小技巧将令你 PHP 代码更加简洁
  • Spring第一个helloWorld
  • ​3ds Max插件CG MAGIC图形板块为您提升线条效率!
  • #Js篇:单线程模式同步任务异步任务任务队列事件循环setTimeout() setInterval()
  • #LLM入门|Prompt#3.3_存储_Memory
  • %3cscript放入php,跟bWAPP学WEB安全(PHP代码)--XSS跨站脚本攻击
  • (2024)docker-compose实战 (8)部署LAMP项目(最终版)
  • (补)B+树一些思想
  • (附源码)计算机毕业设计SSM疫情下的学生出入管理系统
  • (过滤器)Filter和(监听器)listener
  • (顺序)容器的好伴侣 --- 容器适配器
  • (原創) 如何刪除Windows Live Writer留在本機的文章? (Web) (Windows Live Writer)
  • (转载)hibernate缓存
  • (自适应手机端)行业协会机构网站模板
  • ****三次握手和四次挥手
  • .net core + vue 搭建前后端分离的框架
  • .Net Core 微服务之Consul(二)-集群搭建
  • .Net 路由处理厉害了
  • .NET/C# 使用 SpanT 为字符串处理提升性能
  • .NET/C# 在 64 位进程中读取 32 位进程重定向后的注册表
  • .NET和.COM和.CN域名区别
  • .NET开源快速、强大、免费的电子表格组件
  • .net企业级架构实战之7——Spring.net整合Asp.net mvc
  • .NET企业级应用架构设计系列之结尾篇