第十三周 项目四:数组的排序(1.4选择排序)

问题及代码:

/*
* Copyright (c) 2014, 烟台大学计算机学院
* All rights reserved.
* 文件名称:Project4.cpp
* 作    者:李楠
* 完成日期:2014年11月21日
* 版 本 号:v1.0
*
* 问题描述: 编写程序,完成选择排序
* 输入描述: 略
* 程序输出: 略
*/
#include <iostream>
using namespace std;
void select_sort(int p[],int n);
void output_array(int p[],int n);
int main( )
{
    int a[20]={86,76,62,58,77,85,92,80,96,88,77,67,80,68,88,87,64,59,61,76};
    int b[15]={27,61,49,88,4,20,28,31,42,62,64,14,88,27,73};
    select_sort(a,20);   //用选择法按降序排序a中元素
    output_array(a,20);   //输出排序后的数组
    select_sort(b,15);   //用选择法按降序排序b中元素
    output_array(b,15);   //输出排序后的数组
    return 0;
}
//请在下面定义bubble_sort和output_array函数
void select_sort(int p[],int n)
{
    int i,j,t,k;
    for(j=0; j<n-1; ++j)
        for(i=0; i<n-j-1; ++i)
            if(p[i]<p[i+1])
            {
                k=j;
                for(i=j+1; i<n; ++i)
                    if(p[i]>p[k])
                        k=i;
                t=p[k];
                p[k]=p[j];
                p[j]=t;
            }
    return;
}

void output_array(int p[],int n)
{
    int i;
    for(i=0;i<n-1;++i)
        cout<<p[i]<<",";
    cout<<p[n-1]<<"\n";
    return;
}


运行结果:

 

知识点总结:

选择排序这一部分,在上课的时候没有好好听,也就没有理解,看了课件才想起来原来老师讲过,然后又根据过程想了一遍才明白。

学习心得:

上课听讲是很重要的,落下的东西要很长时间才能补回来!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值