PTA---冒泡排序

jmuCIE jmuCIE 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

本题目要求读入N个整数,采用冒泡排序(上升法,即每轮得到一个最小值)进行排序,输出前3轮排序后的结果。

输入格式:

输入不超过100的正整数N和N个整数(空格分隔)。

输出格式:

输出三行,第一行为第一轮排序结果,第二行为第二轮排序结果,第三行为第三轮排序结果。数据间用一个空格分隔。

为简便起见,最后一个元素后也有一个空格。

输入样例:

5
2 5 4 1 3

输出样例:

1 2 5 4 3 
1 2 3 5 4 
1 2 3 4 5 

冒泡排序,是一种计算机科学领域的较简单的 排序算法 。 它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。 走访元素的工作是重复地进行,直到没有相邻元素需要交换,也就是说该元素列已经排序完成。

根据输出样例 ,可以得知该排序由后向前进行排序

则可将数组从最后一个数开始往前进行比较,如果较小,则与前一个数进行交换

以此类推直到第二个数和第一个数比较完成

for(int i=n;i>=2;i--){
    if(list[i]<list[i-1])

{
    ex=list[i];
    list[i]=list[i-1];
    list[i-1]=ex;
    }

}

for(int i=1;i<=n;i++)
    {

printf("%d ",list[i]);

}

这样我们就得到了一轮的排序结果

题目要求输出三轮的排序结果

则可设置变量 cnt(count)用于计数

每输出一轮排序结果计一次数

直到cnt等于三时跳出循环

#include<stdio.h>
int main(){
    int n;
    int list[100];
    int cnt=0;
    int ex;
    scanf("%d",&n);
    for(int i=1;i<=n;i++)
{
        scanf("%d",&list[i]);
    }
    for(int j=1;j<n;j++)
{
    for(int i=n;i>=2;i--)
{
    if(list[i]<list[i-1])
{
    ex=list[i];
    list[i]=list[i-1];
    list[i-1]=ex;
    }
}
    for(int i=1;i<=n;i++)
    {
printf("%d ",list[i]);
}
        cnt++;
    if(cnt==3)
        break;
        printf("\n");
        }
return 0;}

这样我们就得到要排序数组的前三种排序

...全文

相关推荐

冒泡排序pta.docx

冒泡排序pta

常驻客栈

PTA数组冒泡排序[源码]

本文介绍了如何使用冒泡排序算法对给定的n个整数进行从小到大的排序,并输出每一趟排序的结果。输入格式为一个不超过20的正整数n和n个用空格分隔的整数,输出格式包括原始序列和随后n-1趟排序的结果。示例输入为5 4 3 2 1,输出展示了每一趟排序后的序列变化。文章还提供了C语言实现的代码示例,包括输入处理、排序逻辑和输出格式。

肥宅快乐水901

PTA字符串冒泡排序(C语言版)

7-3 字符串的冒泡排序 (20分) 我们已经知道了将N个整数按从小到大排序的冒泡排序法。本题要求将此方法用于字符串序列,并对任意给定的K(<N),输出扫描完第K遍后的中间结果序列。 输入格式: 输入在第1行中给出N和K(1≤K<N≤100),此后N行,每行包含一个长度不超过10的、仅由小写英文字母组成的非空字符串。 输出格式: 输出冒泡排序法扫描完第K遍后的中间结果序列,每行包含一个字符串。 输入样例: 6 2 best cat east a free day 输出样例: best a cat day east free

ε仙女大佬з

数据结构与算法之冒泡排序pta:基于C语言的编程实践与测试

数据结构与算法之冒泡排序pta:基于C语言的编程实践与测试 数据结构与算法之冒泡排序pta:基于C语言的编程实践与测试 数据结构与算法 本资源是一本数据结构与算法之冒泡排序pta的编程实践与测试教程,旨在通过C语言这一高效的编程语言,来实现和测试冒泡排序算法,涵盖了冒泡排序的原理、方法、代码、优化、复杂度等内容,以及冒泡排序的实际应用和案例分析。本资源适合数据结构与算法学习者和考生使用,帮助他们通过项目实践来加深对冒泡排序算法的理解和掌握,提高编程的能力和水平。 提供了多种算法演示和验证的功能,如输入和输出待排序的数据,显示冒泡排序的过程和结果,验证冒泡排序的正确性和效率,比较冒泡排序和其他排序算法的优劣等。本资源适合算法演示和验证的学习者和工程师使用,帮助他们通过Web界面来进行冒泡排序pta的演示和验证,提高算法的知识和水平。 采用Python这一简洁易用的编程语言,从基础到进阶,逐步讲解了冒泡排序算法的分析、讲解和代码,以及冒泡排序算法的优化和扩展等方面。本资源适合算法教学和学习的教师和学生使用,帮助他们通过视频和代码来观看和学习冒泡排序pta的分析和讲解,提高算法的兴趣和能力。

技术宅program

pta:PTA平台刷题

PTA平台刷题代码

信念与梦想
评论 1
收藏 已收藏
分享
返回顶部