Ordenando una estructura en C ++

C ++ – Ordenar una estructura : Aquí, vamos a aprender cómo ordenar una estructura en C ++ Programming Language ?

Generalmente ordenación se realiza en una serie de número entero o cadena, pero puede haber una situación en la sorting se basa en el número pero los datos reales puede ser algún otro valor.

Ejemplo:

Supongamos que tenemos que clasificar los nombres de los estudiantes de acuerdo a número de rollo. Así que una estructura puede ser creado que se puede utilizar para almacenar número de rollo y nombres.

Declaración de la estructura:

    typedef struct value{
int roll;
string name;
}data;

código C ++ a la estructura para ordenar:

#include <bits/stdc++.h>
using namespace std;
typedef struct value{
int roll;
string name;
}data;
bool compare(data a, data b)
{
//for descending order replace with a.roll >b.roll
if(a.roll < b.roll)
return 1;
else
return 0;
}
int main()
{
int n,i;
cout<<"Enter the number of studentsn";
cin>>n;
data array[n];//array of structure is created
cout<<"Enter roll number and then namen";
for(i=0;i<n;i++)
{
cin>>array[i].roll;
cin>>array[i].name;
}
sort(array,array+n,compare);
cout<<"Sorted list..."<<endl;
for(i=0;i<n;i++)
{
cout<<array[i].roll<<" ";
cout<<array[i].name<<endl;
}
return 0;
}

salida

Enter the number of students
3
Enter roll number and then name
101 Amit
102 Abhishek
103 Shubham
Sorted list...
101 Amit
102 Abhishek
103 Shubham


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *