我们已经知道了将N个整数按从小到大排序的冒泡排序法。本题要求将此方法用于字符串序列,并对任意给定的K(K<N),输出扫描完第K遍后的中间结果序列。

输入格式:
输入在第1行中给出N和K(1≤K<N≤100),此后N行,每行包含一个长度不超过10的、仅由小写英文字母组成的非空字符串。

输出格式:
输出冒泡排序法扫描完第KK遍后的中间结果序列,每行包含一个字符串。

输入样例:

6 2
best
cat
east
a
free
day

输出样例:

best
a
cat
day
east
free

*注

感觉这里的样例有一点问题。

best cat east a free day

这6个字符串扫描一遍之后应该为;

cat best a east day free

扫描两遍之后应该为:

cat a best day east free

但是给的输出样例却是:

best a cat day east free

这个应该是把第一个字符串排除然后扫描得到的结果。

程序代码:

#include<iostream>
#include<string.h>
#include<stdio.h>
using namespace std;
int main()
{int N,k;cin>>N>>k;char temp[20];int i=0;char str[N][11];while(i<N){//scanf("%s",str[i]);cin>>str[i];i++;}   i=0;    for(int i=N-1;i>N-1-k;i--){//这里的j值本来应该从0开始,但是为了得到跟输出样例一直的结果,改为从1开始扫描。for(int j=1;j<i;j++)if(strlen(str[j])>strlen(str[j+1])){strcpy(temp,str[j]);strcpy(str[j],str[j+1]);strcpy(str[j+1],temp);}           }int a=0;while(a<N){if(a==(N-1))cout<<str[a];elsecout<<str[a]<<endl;a++;}return 0;
}

运行结果:

这段代码通过了两个测试用例,第三个没有通过,不知道是什么原因。

转载于:https://www.cnblogs.com/zhengkang/p/5712418.html

【c++】字符串的冒泡排序【存疑,待查】相关推荐

  1. 7-30 字符串的冒泡排序 (C语言)

    7-30 字符串的冒泡排序 (20 分)我们已经知道了将N个整数按从小到大排序的冒泡排序法.本题要求将此方法用于字符串序列,并对任意给定的K(<N),输出扫描完第K遍后的中间结果序列. 输入格式 ...

  2. 对字符串进行冒泡排序

    对字符串序列进行冒泡排序和对数组进行冒泡排序原理相同, 但有以下两处需要用到字符串的知识. 1.需要创建二维字符数组,以存储与处理多个字符串. char a[3][10]; //定义了一个3行10列的 ...

  3. 7-30 字符串的冒泡排序 (20 分) or 7-27 冒泡法排序 (20 分)

    将N个整数按从小到大排序的冒泡排序法是这样工作的:从头到尾比较相邻两个元素,如果前面的元素大于其紧随的后面元素,则交换它们.通过一遍扫描,则最后一个元素必定是最大的元素.然后用同样的方法对前N−1个元 ...

  4. c语言冒泡排序算法排序字符串,利用冒泡排序实现一串字符串从小到大的排序...

    实现B/S架构,输入一串字母或数字,将它们按从小到大排序,排序算法在服务端实现. 以下是实现: Test.java import java.io.IOException; import java.io ...

  5. python字符串的冒泡排序_如何实现python冒泡排序算法?

    冒泡排序是一种简单的排序技术,它通过比较相邻的元素遍历整个列表,对它们进行排序并交换元素,直到对整个列表进行排序. 算法:给定一个包含n个元素的列表L,这些元素的值或记录为L0, L1,-,Ln-1, ...

  6. 五、数组、字符串以及冒泡排序--附代码案例

    五.数组和字符串 5.1 一维数组 5.1.1 一维数组的定义和使用 5.1.2 一维数组的初始化 5.1.3 数组名 5.1.4 强化训练 5.1.4.1 一维数组的最值 5.1.4.2 一维数组的 ...

  7. 字符串的冒泡排序c语言,c语言单链表冒泡排序_c语言字符串排序冒泡法_c语言链表排序...

    1. #include 2. 3. struct Node; 4. 5. typedef struct Node *PtrToNode; 6. typedef PtrToNode List; 7. t ...

  8. 1.14 字符串查找(3种方法)indexOf(), lastlndexOf(), charAt()

    在给定的字符串中查找字符或字符串是比较常见的操作.字符串查找分为两种形式:一种是在字符串中获取匹配字符(串)的索引值,另一种是在字符串中获取指定索引位置的字符. 根据字符查找 String 类的 in ...

  9. JDK9 的字符串底层原理是什么?

    前言 本文隶属于专栏<100个问题搞定Java虚拟机>,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢! 本专栏目录结构和文献引用请见100个问题搞定Java虚拟 ...

最新文章

  1. matlab 0-100随机数,添加到100的随机数:matlab
  2. Spring boot + mybatis plus 快速构建项目,生成基本业务操作代码。
  3. Servlet的API(一)
  4. 程序员如何在未来之路寻找自己的“龙椅”
  5. 三种视觉软件框架开发源码集合 三套 halcon视觉框架
  6. 从JavaScript单例模式到Vuex中store
  7. 小米5s html,小米5S线刷MIUI9系统的方法_小米5S专用的MIUI9系统刷机包
  8. Dart 2.18 正式发布
  9. 手机计算机国二支付,“刷手机”时代悄然来临 手机支付呼唤国家标准(二)...
  10. C/C++找工作这点事
  11. ReID中PCB模型输出维度_搞定PCB信号完整性,只需9步!都可以学会
  12. 中序遍历二叉树-非递归方式实现-附C++代码
  13. Java+Swing实现医院管理系统
  14. C语言结构体的1字节对齐(代码实现)
  15. 计算机械效率的公式怎么读,机械效率
  16. OpenSSL中的EVP接口
  17. 博客系统前端页面代码实现及页面展示(代码版)
  18. 干货 | Amos实操教程之中介效应检验
  19. java一百以内三的倍数_3的倍数有哪些100以内?
  20. 如何永久性去除word修订标记及批注帮助

热门文章

  1. Liferay被SourceForge评为7月最佳开源项目
  2. 企业IT构建核心基础架构解决方案
  3. lvgl的区别 qt_LVGL分析-画面刷新
  4. Linux——RHCE试题与答案详解
  5. php reactphp wss_Node和React中如何进行实时通信?
  6. BadgerDAO锁仓量超过9亿美元
  7. BarnBridge出现前端错误
  8. 评分卡建模工具scorecardpy全解读
  9. Centos 6.6 安装
  10. day 39 mycql 数据库之约束