hzCPPOJ

【函数】直接插入排序(基于函数的代码框架填空)

时间限制:  1 s      内存限制:   128 MB
提交:31     正确:27     分值:96

题目描述

你需要完成以下代码填空任务,实现一个插入排序程序。程序主体框架不准改动。具体要求如下:

  1. 实现 swap 函数
    • 函数 swap 用于交换两个变量的值。
    • 你需要自行定义函数的参数,通过引用地址参数,以实现交换功能。
  2. 实现 InsertionSort 函数
    • 函数InsertionSort 实现了插入排序算法的升序排列,通过调用 swap 函数进行元素交换。
    • 你需要根据上下文要求自行定义函数的参数。
  3. 实现 in 函数
    • 函数 in 用于从数组的指定位置开始存储连续 n 个数据。
    • 参数 a[] 是数组,begin 是起始位置,n 是要存储的数据个数。
  4. 实现 out 函数
    • 函数 out 用于输出数组指定区间内的元素。
    • 参数 a[] 是数组,begin 是起始位置,end 是结束位置。
  5. 主程序
    • 读取一个整数 n,表示要排序的正整数的个数。
    • 调用 in 函数读取 n 个正整数并存储到数组中。
    • 调用 InsertionSort函数对数组进行排序。
    • 调用 out 函数输出排序后的数组。

代码框架

#include <iostream>

using namespace std;


const int MAXN = 1000;


void swap(参数自定);  //函数swap可交换两个变量值
void InsertionSort(参数自定);//函数InsertionSort可实现数组的冒泡排序功能
void in(int a[],int begin,int n);//函数in可实现数组从begin位开始存储连续n个数据

void out(int a[],int begin,int end);//函数out可实现数组区间输出


int main()
{
    int a[MAXN+10] = {0};

    int n;


    cin >> n;

    in( );


    InsertionSort();
    
    out( );
    
    return 0;
}
void swap()
    {
        //在此处实现函数代码,
    }

void InsertionSort()
    {
        //在此处实现函数代码,要求调用swap()函数进行交换
    }
void in(int a[],int begin,int n)
    {
       //在此处实现函数代码
    }
void out(int a[],int begin,int end)
    {
           //在此处实现函数代码,按要求输出,a[]从begin位开始到end位结束
   }

输入

输出

样例

样例输入:
11 42 168 35 101 270 125 79 259 263 165 6
样例输出:
6 35 42 79 101 125 165 168 259 263 270

提交人

AmberXie

来源/分类