Título: ordenar matrices nxn en c++ Publicado por: novato99 en 5 Noviembre 2017, 19:13 pm hola soy un novato entrando a esto de la programacion C++ ya que me llamo mucho la atencion.
quisiera que me ayudaran con una matriz NxN en el cual introducimos desordenadamente los valores ejm: 5 8 3 2 20 7 6 10 esta seria la matriz introducida 1 22 4 0 luego quiero ordenarla de forma de culebra o zigzag (depende como sea su nombre en su pais) pero invertida de la siguiente manera. 3 2 1 0 < (numero menor) > 4 5 6 7 (numero >> 22 20 10 8 < mayor) agradeceria ayuda. Título: Re: ayuda ordenar matrices nxn en c++ Publicado por: CalgaryCorpus en 5 Noviembre 2017, 19:18 pm Sabes ordenar un arreglo unidimensional?
Sabes como invertir el orden de un arreglo unidimensional? Si es asi, creo que lo unico que te falta es crear una funcion o 2 funciones que dado un indice en un arreglo unidimensional, lo convierta en 2 indices. Y entonces, si tienes un algoritmo que diga swap( i, j ) con i y j indices de un arreglo unidimensional, lo hagas en la matriz 2d. Una vez ordenado, pasas otra vez por el arreglo 2 dimensional e inviertes los sub arreglos pares (o impares, dependiendo de como cuentes). Título: Re: ordenar matrices nxn en c++ Publicado por: novato99 en 5 Noviembre 2017, 20:19 pm aun no lo menejo bien. :-[
Título: Re: ordenar matrices nxn en c++ Publicado por: MAFUS en 5 Noviembre 2017, 21:19 pm Te diría que uses la función qsort para ordenar. Es un poco difícil de usar si eres nuevo en el lenguaje pues usa punteros a void y un puntero a función, pero no es muy complicada si buscas unos cuantos ejemplos y buscas documentación simplificada de ella.
Lo que podrías hacer es crear un puntero (de una dimensión) a la tabla y ordenarla mediante qsort de menor a mayor. Una vez tienes la tabla ordenada usar de nuevo qsort, pasándole una función de orden inversa, vas ordenando las líneas impares de la tabla; las pares ya estarán ordenadas por el paso anterior. Cuándo se termine ya tendrás la tabla ordenada según tu criterio. Título: Re: ordenar matrices nxn en c++ Publicado por: pepitopepote en 7 Noviembre 2017, 04:10 am para ordenar puedes utilizar el método de la burbuja
https://es.wikipedia.org/wiki/Ordenamiento_de_burbuja (https://es.wikipedia.org/wiki/Ordenamiento_de_burbuja) |