C sharp - Ordenar arrays de structs

 
Vista:
sin imagen de perfil
Val: 5
Ha aumentado su posición en 22 puestos en C sharp (en relación al último mes)
Gráfica de C sharp

Ordenar arrays de structs

Publicado por Pepito (3 intervenciones) el 22/11/2019 11:55:54
Buenos días,
me gustaría saber cómo puedo ordenar structs completos, usando métodos como el de burbuja, ordenación directa, etc. para ordenar structs completos, es decir, teniendo lo siguiente:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
struct NombreCalle
	{
		public string calle, ciudad;
		public int telefono, numerocalle;
	}
	struct persona
	{
		public string nombre, apellido;
		public NombreCalle direccion;
	}
 
...
 
perona[] personas = new persona[10];

¿Cómo ordenar las personas, por ejemplo, por orden alfábetico por sus apellidos?

No sé si me he explicado con claridad, el hecho es no usar "Array.Sort" y ordenar los apellidos pero junto con el resto del array.

Un saludo al foro
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 3
Ha aumentado su posición en 36 puestos en C sharp (en relación al último mes)
Gráfica de C sharp

Ordenar arrays de structs

Publicado por Álvaro Nicolás (2 intervenciones) el 22/11/2019 18:56:00
Yo soy principiante, te voy a dar mis solución y así la pruebas pero estaría bien que alguien me corrigiera.

Utilizando el método burbuja de la siguiente manera (creando una variable temporal):

1
2
3
4
5
6
7
8
9
for (int i = 0; i < actual-1; i++)
{
    for (int j = i+1; j < actual; j++)
    {
        temp = Nombre-array[i].apellido;
        Nombre-array[i].apellido = Nombre-array[j].apellido;
	Nombre-array[j].apellido = temp1;
    }
}

'actual' sería el contador que tienes para ver la posición del array por la que te has quedado.

Pruébalo, no pierdes nada, ya te digo que estoy empezando.

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar