• Portada
    • Recientes
    • Usuarios
    • Registrarse
    • Conectarse

    Algoritmo de ordenacion QuickSort en lenguaje C++, AYUDA!!!!

    Programado Fijo Cerrado Movido Software
    18 Mensajes 8 Posters 16.9k Visitas 1 Watching
    Cargando más mensajes
    • Más antiguo a más nuevo
    • Más nuevo a más antiguo
    • Mayor número de Votos
    Responder
    • Responder como tema
    Accede para responder
    Este tema ha sido borrado. Solo los usuarios que tengan privilegios de administración de temas pueden verlo.
    • P Desconectado
      pakohuelva
      Última edición por

      ¿Todavia no lo has encontrado?

      Este finde-puente te lo paso.

      1 Respuesta Última respuesta Responder Citar 0
      • Glamdring129G Desconectado
        Glamdring129
        Última edición por

        joer ahora mismo no se donde lo tengo pero si lo encuentro entre los restos de apuntes te paso el algoritmo para C que supongo que sea similar al de C++

        1 Respuesta Última respuesta Responder Citar 0
        • JoMneLJ Desconectado
          JoMneL
          Última edición por

          ok, muchas gracias, esperare a despues del fin de semana, a ver si me podeis mandar lo que tengais…

          Muchas gracias a todos.

          CIAO

          1 Respuesta Última respuesta Responder Citar 0
          • SATANS Desconectado
            SATAN
            Última edición por

            JomNel te mando ahora a tu mail el algoritmo en pseudocodigo.

            1 Respuesta Última respuesta Responder Citar 0
            • P Desconectado
              pakohuelva
              Última edición por

              http://www.dsic.upv.es/~jorallo/libro_c++/fuentes/ej10_09.cpp

              Esa es una manera que me he encontrado por internet, mira si te vale, si no avisa y ya te lo paso de pascal a C.

              1 Respuesta Última respuesta Responder Citar 0
              • JoMneLJ Desconectado
                JoMneL
                Última edición por

                me cagon la put… es 99% igual al que he implementado, y ademas es de alguien de mi universidad (upv--> universidad politecnica de valencia) si es que no pue ser....

                gracias.

                CIAO

                P.D Aun así mandadme lo que tengais, y así intentare optmizarlo.

                1 Respuesta Última respuesta Responder Citar 0
                • JoMneLJ Desconectado
                  JoMneL
                  Última edición por

                  Retomo la rama…

                  ... pues no consigo que me funcione al 100%, hay un fallo y no hay forma de dar con el, estoy a punto de abandonar...

                  si algun alma caritativa esta dispuesta a pegarle un vistazo que me lo diga y le mando el archivo con el codigo por correo electronico.

                  Gracias.
                  CIAO

                  1 Respuesta Última respuesta Responder Citar 0
                  • hardboxH Desconectado
                    hardbox
                    Última edición por

                    por cierto, tú no serás de la facultad…<br /><br />----------------------------------------------------------------------<br />template<typename T> <br />void insdirecta(T *v, int ini, int fin)<br />{<br /> int i,j;<br /> T aux;<br /><br /> for (i = ini+1; i <= fin; i++) {<br /> aux=v<em>;<br /> for (j = i-1; j>=ini && aux<v[j]; j–) <br /> v[j+1]=v[j]; <br /> v[j+1]=aux;<br /> }<br />} <br /><br /><br />template<typename T><br />inline void intercambiar(T &px, T &py)<br />{<br /> T aux;<br /> aux = px; px = py; py = aux;<br />}<br /><br />template<typename T><br />void quicksort(T *v, int ini, int fin)<br />{<br /> int izq,der;<br /> T p;<br /><br /> if (ini < fin) {<br /> izq = ini+1; der = fin; p = v[ini];<br /> while (izq<=der) {<br /> if (v[izq]<=p) { izq++; }<br /> else { intercambiar(v[izq],v[der]); der–; }<br /> }<br /> intercambiar(v[ini],v[der]);<br /> quicksort(v,ini,der-1);<br /> quicksort(v,der+1,fin);<br /> }<br />}<br /><br />–--------------------------------------------------------------------</em>

                    1 Respuesta Última respuesta Responder Citar 0
                    • JoMneLJ Desconectado
                      JoMneL
                      Última edición por

                      ==============================================
                      vector <int>quick(vector <int>vect, int izq, int dcha) {
                      int i=0, j=0;
                      int pivote=0, aux=0;
                      i=izq;
                      j=dcha;
                      pivote = vect[(dcha - izq)/2];

                      do {
                      while (vect _< pivote) {
                      i++; }

                      while (pivote < vect[j]) {
                      j–; }

                      if (i <= j) {
                      aux = vect_;
                      vect _= vect[j];
                      vect[j] = aux;
                      i++;
                      j–;
                      }

                      } while (i <= j);

                      if (izq < j)
                      quick (vect, izq, j-1);

                      if (i < dcha)
                      quick (vect, i+1, dcha);

                      return(vect);

                      }

                      Este es el que yo tengo implementado, pero lo que no me funciona es la rellamada a la funcion, y no consigo dar con el fallo...

                      Soy estudiante de Ing. Tec. de Teleco Esp. Sistemas Electronicos en Gandia, si eres tu de alli tambien dilo y nos ponemos en contacto.

                      CIAO___</int></int>

                      1 Respuesta Última respuesta Responder Citar 0
                      • P Desconectado
                        pakohuelva
                        Última edición por

                        ¿Has compilado y trazado? ¿Que te sale? ¿Vector esta definida como una tabla unidimensional? ¿Las llamadas estan bien? ¿No tendrias que poner vector=llamada?

                        1 Respuesta Última respuesta Responder Citar 0
                        • hardboxH Desconectado
                          hardbox
                          Última edición por

                          yo soy de valencia.
                          No entiendo pq pones if's al final, ya q quicksort tiene q ejecutarse en las 2 partes del vector.

                          ¿Conoces a Emi? Estudia lo que tú, y ahora está de Erasmus en Alemania (no acaba el proyecto ni de conya, menudas fiestas se está pegando)

                          No te comas la cabeza!! 🙂

                          1 Respuesta Última respuesta Responder Citar 0
                          • S Desconectado
                            sayuri
                            Última edición por

                            hola.

                            Por mas que recien he visto tu pedido ,de hace años ,me preguntaba si tenias todavia o si consegiste el programa basado en quicksort en c++,claro,y de forma estructurada,por lo menos con 3 modulos.

                            avisame please!

                            gracias

                            1 Respuesta Última respuesta Responder Citar 0
                            • 1 / 1
                            • First post
                              Last post

                            Foreros conectados [Conectados hoy]

                            2 usuarios activos (0 miembros y 2 invitados).
                            febesin, pAtO,

                            Estadísticas de Hardlimit

                            Los hardlimitianos han creado un total de 543.4k posts en 62.8k hilos.
                            Somos un total de 34.8k miembros registrados.
                            agileregualtory ha sido nuestro último fichaje.
                            El récord de usuarios en linea fue de 78 y se produjo el Fri Oct 17 2025.