首页 > 其他分享 >数组排序输出(函数模板)

数组排序输出(函数模板)

时间:2023-05-22 19:12:04浏览次数:33  
标签:sort case ty int 数组 排序 display 模板 size

对于输入的每一批数,按从小到大排序后输出。

一行输入为一批数,第一个输入为数据类型(1表示整数,2表示字符型数,3表示有一位小数的浮点数,4表示字符串,0表示输入结束),第二个输入为该批数的数量size(0<size<=10),接下来为size个指定类型的数据。

输出将从小到大顺序输出数据。

函数接口定义:sort函数将接受size个数据,将它们从小到大排序后存在a指向的一段连续空间中。

 
template <class T>
void sort(T *a, int size);
 

裁判测试程序样例:

 
#include <iostream>
#include <string>
using namespace std;

/* 请在这里填写答案 */

template <class T>
void display(T* a, int size){
    for(int i=0; i<size-1; i++) cout<<a[i]<<' ';
    cout<<a[size-1]<<endl;
}
int main() {
     const int SIZE=10;
     int a[SIZE];
     char b[SIZE];
     double c[SIZE];
     string d[SIZE];
     int ty, size;
     cin>>ty;
     while(ty>0){
         cin>>size;
         switch(ty){
             case 1:sort(a,size); display(a,size); break;
             case 2:sort(b,size); display(b,size); break;
             case 3:sort(c,size); display(c,size); break;
             case 4:sort(d,size); display(d,size); break;
         }
         cin>>ty;
     }
      return 0;
}

 

输入样例:

1 3 3 2 1
2 2 a A
3 3 1.5 2.6 2.2
4 2 bca abc
0
 

输出样例:

1 2 3
A a
1.5 2.2 2.6
abc bca


代码实现:

#include<algorithm>
template <class T>
void sort(T *a, int size)
{
int i;
// T temp;
for(i=0;i<size;i++)
{
cin>>a[i];
}
sort(a,a+size);
}

标签:sort,case,ty,int,数组,排序,display,模板,size
From: https://www.cnblogs.com/qian-heng/p/17421480.html

相关文章

  • 经典的快速排序算法
    经典的快速排序算法其中将一个数组按照枢纽元的大小将其分成左右两个部分的算法成为快速算法这个写个避免了判断相等的情况当遇到元素与枢纽元相等时停止目的是为了产生两个相对平衡的左右数组voidtestQuickSort(){intarr[]={2,4,3,9,6,5,7,0,2,1};//int......
  • 找到数组中第几个最小的数据
    找到数组中第几个最小的数据将经典的快速排序算法做简单修改即可示例代码如下:voidtestFindSpecificMin(){intarr[]={2,4,3,9,6,5,7,0,2,1};//intarr[]={4,2,9};//intarr[]={0,1,2,3,4,5,6,7,8};intposition=2;findSpe......
  • dede共用同一个文章ID展示多个不同的模板页面
    DEDE共用同一个文章ID展示多个不同的模板页面,比如链接:http://jinmengqiang.cn/info-1.htmlhttp://jinmengqiang.cn/plus/show.php?aid=1以上2个链接可以使用不同的模板,其实内容可以相同也可以不同的进行调用(这个需要后台二次开发进行配合)。首先复制/m/view.php并且改名......
  • 树状数组学习笔记
    树状数组(BinaryIndexedTree)是一种利用数的二进制特征进行检索的树状结构。树状数组是一种奇妙的数据结构,不仅非常高效,而且代码及其简洁。 #definelowbit(x)((x)&-(x))voidadd(intx,intd){//更新while(x<=n){tree[x]+=d;x+=lowbit(x);}}......
  • 冒泡排序
    【三】冒泡排序基本思想:两个数比较大小,较大的数下沉,较小的数冒起来。过程:比较相邻的两个数据,如果第二个数小,就交换位置。从后向前两两比较,一直到比较最前两个数据。最终最小数被交换到起始的位置,这样第一个最小数的位置就排好了。继续重复上述过程,依次将第2.3...n-1个......
  • 鹏业安装算量软件_数据管理层次的模板化
    鹏业安装算量软件数据管理层次的模板化,用于群楼标准化数据快速建立操作步骤1.工程量表上点鼠标右键-导出模板2.另存模板名称3.打开新建工程4.工程量表上鼠标右键-导入模板5.选择模板文件软件中的操作1.打开已经做好的工程(层次结构已经建好),工程量表中点击鼠标右键,在弹出框中点击导出......
  • 【iOS开发】for in 可变数组 崩溃
    该问题来自一道笔试题:一、执行下面代码会发生什么?什么解决?NSMutableArray*array=[NSMutableArrayarrayWithObjects:@"122",@"333",@"444",nil];for(NSString*stringinarray){[arrayremoveObject:string];}答:会崩溃,提示NSGenericExc......
  • 【React工作记录五十九】根据key值过滤形成新得数组
     目录前言导语 核心实现代码运行结果前言我是歌谣我有个兄弟巅峰的时候排名c站总榜19叫前端小歌谣曾经我花了三年的时间创作了他现在我要用五年的时间超越他今天又是接近兄弟的一天人生难免坎坷大不了从头再来歌谣的意志是永恒的放弃很容易但是坚持一定很酷导语根据key......
  • Python 什么是数组?
    在Python中,数组通常是指用于表示具有相同数据类型的多个元素的数据结构。在Python中,数组可以表示为列表或NumPy数组。列表:Python中最常用的数组表示法是“列表”。一个列表是由一系列有序元素的集合组成,每个元素可以是字符串、数字、布尔值和其他任何类型的对象。例如: ......
  • 【算法题】二维数组打印
    链接:https://www.nowcoder.com/questionTerminal/6fadc1dac83a443c9434f350a5803b51有一个二维数组(n*n),写程序实现从右上角到左下角沿主对角线方向打印。(注:主对角线方向为从左上角指向右下角这一斜线的方向)给定一个二位数组arr及题目中的参数n,请返回结果数组。 数......