Código de C sharp - Ordenar un array bidimensional - Método burbuja

Versión 1
estrellaestrellaestrellaestrellaestrella(2)

Publicado el 11 de Enero del 2009gráfica de visualizaciones de la versión: Versión 1
26.419 visualizaciones desde el 11 de Enero del 2009
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
// Main.cs created with MonoDevelop
// User: xavi at 00:50 11/01/2009
//
// La Web del programador
// http://www.lawebdelprogramador.com
//
using System;
 
namespace arrayBidimensionalOrdenar
{
	class MainClass
	{
		public static void Main(string[] args)
		{
			//Creamos un array bidimensional
			int[,] nameArray=new int[5,2];
			//Colocamos contenido
			nameArray[0,0]=10;
			nameArray[0,1]=0;
			nameArray[1,0]=20;
			nameArray[1,1]=1;
			nameArray[2,0]=15;
			nameArray[2,1]=2;
			nameArray[3,0]=5;
			nameArray[3,1]=3;
			nameArray[4,0]=25;
			nameArray[4,1]=4;
 
			for (int i=0;i<(nameArray.Length/2);i++)
			{
				Console.Write (nameArray[i,0] + " - " + nameArray[i,1] + "
");
			}
			sortArrayBidi(ref nameArray);
			Console.Write("----------------------------
");
			for (int i=0;i<(nameArray.Length/2);i++)
			{
				Console.Write (nameArray[i,0] + " - " + nameArray[i,1] + "
");
			}
		}
 
		// Metodo de la burbuja para ordenar un array bidimensional
		public static void sortArrayBidi(ref int[,] originArray)
		{
			// Creamos un array temporal para almacenar el valor anterior
			// para no perder el valor
			int[,] tmp=new int[1,2] {{0,0}};
			// Recorremos el array entero
			for (int i=0;i<(originArray.Length/2);i++)
			{
				// Para cada valor de "i" recorremos el array entero
				for (int j=0;j<(originArray.Length/2)-1;j++)
				{
					if(originArray[j,0]<originArray[j+1,0])
					{
						// Cogemos el valor actual y lo ponemos en el array temporal
						tmp[0,0]=originArray[j,0];
						tmp[0,1]=originArray[j,1];
						// Reemplazamos el valor del array por el siguiente valor
						originArray[j,0]=originArray[j+1,0];
						originArray[j,1]=originArray[j+1,1];
						// En el siguente valor, ponemos el temporal
						originArray[j+1,0]=tmp[0,0];
						originArray[j+1,1]=tmp[0,1];
					}
				}
			}
		}
	}
}



Comentarios sobre la versión: Versión 1 (2)

Imágen de perfil
28 de Mayo del 2017
estrellaestrellaestrellaestrellaestrella
Buen dia.

Muy buen ejemplo.

Me podrias decir como hago para hacer la comparación con variables tipo string en la linea:

1
if(originArray[j,0]<originArray[j+1,0])

El condicional genera un error en C#

Gracias por tu consejo.
Responder
KRIS
11 de Abril del 2018
estrellaestrellaestrellaestrellaestrella
NO ME PUEDEN RECOMENDAR UN LIBRO DONDE CONTENGA ESTA INFORMACION
PLIS AYUDA :,V
Responder

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s1752