559: 字符串排序(python)

收藏

难度:一般

标签:暂无标签

题目描述

在对字符串的排序中,往往具有不同的规则来判断字符串的大小先后。这里有两种比较常见的规则: 1. 首先按字符串长度进行排序,对长度相同的字符串,按字母顺序进行排序。如:ab, gdh, c, gaa, caa排序后的结果是:c, ab, caa, gaa, gdh 2. 直接按字母顺序排序,把长度不同的串都按相同长度处理。如:ab, gdh, c, gaa, caa排序后的结果是:ab, c, caa, gaa, gdh 你的任务是写一个程序,对于输入的字符串,按照这两种方式分别进行排序。

输入
 

只有一组测试数据,测试数据包括多行:第一行是字符串个数N,接下来的N行为字符串,字符串均为大小写字母,不需判错。见sample input

输出
 

输出为两行,按要求输出字符串排序后的结果,第一行为上面第一种方法,第二行为第二种方法。每两个字符串中以一个空格间隔开。见sample output

样例输入复制
5
ab
gdh
c
gaa
caa
样例输出复制
c ab caa gaa gdh
ab c caa gaa gdh
def f(a,b):if len(a)>len(b):return aelse:return b
nums=[]
n=int(input())
for _ in range(n):nums.append(input())
nums.sort()
num2=sorted(nums)
# print(*nums)
for i in range(0,len(nums)):for j in range(0,len(nums)-i-1):if f(nums[j],nums[j+1])==nums[j]:nums[j],nums[j+1]=nums[j+1],nums[j]
print(*nums)
print(*num2)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/759926.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

力扣热门算法题 56. 合并区间,57. 插入区间,58. 最后一个单词的长度v

56. 合并区间,57. 插入区间,58. 最后一个单词的长度,每题做详细思路梳理,配套Python&Java双语代码, 2024.03.20 可通过leetcode所有测试用例。 目录 56. 合并区间 解题思路 完整代码 Python Java ​编辑 5…

MCU技术的创新浪潮与产业变革

MCU技术的创新浪潮与产业变革 一、MCU技术的创新发展 MCU,即微控制器,作为现代电子设备的核心部件,一直在不断地创新与发展。随着科技的进步,MCU的性能得到了极大的提升,功能也越来越丰富。从8位到32位,再…

G1和ZGC垃圾回收器学习

前言 ​ 随着JDK17的占有率不断升高和SpringBoot3最低支持JDk17,JDK17很大概率会成为大家后续升级的一个选择,而JDK17上最重要的垃圾回收器G1和ZGC,也就显得格外重要。大家提前了解或者学习一下肯定是有用的。 ​ 本篇文章也默认大家了解一…

C语言学习笔记

基础语法 注释 int main() {//这是单行注释 /** 多行注释*/ }变量 变量声明 格式:type name int main() {//变量的声明int num;//变量使用num1;//声明多个变量int num1,num2;//变量的初始化int num31;} int num; num10; 常量 const dou…

单片机学到什么程度才可以去工作?

单片机学到什么程度才可以去工作? 如果没有名校或学位的加持,你还得再努力一把,才能从激烈的竞争中胜出。以下这些技能可以给你加分,你看情况学,不同行业对这些组件会有取舍: . Cortex-M内核:理解MCU内核各部件的工作机制&#…

力扣---两数相加

给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这两个数都不会以 0 …

AI程序员:编程界的新贵还是险象环生?

全球首位AI程序员诞生,将会对程序员的影响有多大? 最近,全球的编程界掀起了一场轩然大波,因为一位名为Devin的AI程序员闪亮登场。他的出现让人不禁思考一个有趣而深刻的问题:AI程序员会不会抢走人类程序员的饭碗呢&am…

快速画流程图

使用在线工具:PlantUML PlantUML 官网:https://plantuml.com/ 中文官网:https://plantuml.com/zh/ 使用步骤如下: 1、拷贝一个完成函数: int func_init(const char *tag) {if (tag ! NULL) {printf("set TAG :%s", tag);}print…

webpack5零基础入门-13生产模式

1.生产模式介绍 生产模式是开发完成代码后,我们需要得到代码将来部署上线。 这个模式下我们主要对代码进行优化,让其运行性能更好。 优化主要从两个角度出发: 优化代码运行性能优化代码打包速度 2.生产模式准备 我们分别准备两个配置文件来放不同的…

xml转json

安装包 <dependency><groupId>com.fasterxml.jackson.dataformat</groupId><artifactId>jackson-dataformat-xml</artifactId><version>2.15.3</version></dependency>使用 类定义 Data JacksonXmlRootElement(localName &…

python的FastAPI 快速入门

你好&#xff0c;我是 shengjk1&#xff0c;多年大厂经验&#xff0c;努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注&#xff01;你会有如下收益&#xff1a; 了解大厂经验拥有和大厂相匹配的技术等 希望看什么&#xff0c;评论或者私信告诉我&#xff01; 文章目录 一…

《算法王晓东》多处最优服务次序问题

多处最优服务次序问题 题目描述 设有n个顾客同时等待一项服务。顾客i需要的服务时间为ti, 1≤i≤n。共有s处可以提供此项服务。应如何安排n个顾客的服务次序才能使平均等待时间达到最小? 平均等待时间是n个顾客等待服务时间的总和除以n。 算法设计&#xff1a;对于给定的n个顾…

41 物体检测和目标检测数据集【李沐动手学深度学习v2课程笔记】

目录 1. 物体检测 2. 边缘框实现 3.数据集 4. 小结 1. 物体检测 2. 边缘框实现 %matplotlib inline import torch from d2l import torch as d2ld2l.set_figsize() img d2l.plt.imread(../img/catdog.jpg) d2l.plt.imshow(img);#save def box_corner_to_center(boxes):&q…

CY7C144

关于CY7C144和CY7C145这两款双端口静态随机存取存储器&#xff08;Dual-Port SRAM&#xff09;的数据手册&#xff0c;由Cypress Semiconductor公司生产。以下是文档的翻译内容和详细解读&#xff1a; 特性 真正的双端口存储单元&#xff0c;允许同时读取同一内存位置CY7C144…

javascript的词法结构

js的标识符也就是名字&#xff0c; 必须以 字母、下划线、或$符号开头 unicode js程序是使用Unicode字符集编写的&#xff0c; 建议只使用ASCII字母和数字&#xff0c;但是语言本身也支持使用Unicode字母 数字和象形文字 不支持标签符号 关于Unicode转义序列 由于假数据硬件和…

设计模式之抽象工厂模式解析

抽象工厂模式 1&#xff09;问题 工厂方法模式中的每个工厂只生产一类产品&#xff0c;会导致系统中存在大量的工厂类&#xff0c;增加系统的开销。 2&#xff09;概述 a&#xff09;产品族 和 产品等级结构 产品等级结构&#xff1a;产品的继承结构&#xff1b; 产品族&…

通俗理解自注意力机制

自注意力机制&#xff08;Self-Attention Mechanism&#xff09; 是一种用于处理序列数据的机制&#xff0c;最初被引入到神经网络模型中&#xff0c;用于在序列数据中建立全局依赖关系。自注意力机制最常用于自然语言处理和计算机视觉领域&#xff0c;特别是在Transformer模型…

Python实战:Pandas数据合并与重塑

本文将深入探讨Pandas库在数据合并与重塑方面的强大功能。我们将涵盖多种数据合并方法&#xff0c;如merge、join、concat等&#xff0c;以及数据重塑的技巧&#xff0c;如pivot_table、merge_asof等。 一、引言 Pandas是一个强大的Python数据分析库&#xff0c;它提供了丰富…

【Flutter】文件选择器(file_picker)的用法

Flutter 没有提供内置的文件选择器&#xff0c;但社区内有人贡献了一个比较完整的解决方案——file_picker。 file_picker 的 API 简洁易用&#xff0c;支持全平台&#xff08;Android / iOS / Mac / Linux / Windows&#xff09;&#xff0c;是我开发桌面应用时的首选。 这边…

HMI界面之:上位机界面设计,一文扫盲

一、什么是上位机 上位机&#xff08;Supervisory Control and Data Acquisition&#xff0c;简称SCADA&#xff09;是一种用于监控和控制工业过程的计算机系统。它通常由两个主要部分组成&#xff1a;上位机和下位机。 上位机是SCADA系统中的主要控制中心&#xff0c;负责监控…