51. Programación en C++ || Ordenamientos || Ordenamiento por Inserción

Поділитися
Вставка
  • Опубліковано 4 січ 2025

КОМЕНТАРІ • 174

  •  6 років тому +22

    💻 Apúntate al curso completo de Programación en C++:
    Hotmart: hotmart.com/es/marketplace/productos/programacion-en-c-v0ivo/N78682741H

  • @Naga9519
    @Naga9519 4 роки тому +98

    Qué grande que eras! Voy a llorar :'D

    • @Naga9519
      @Naga9519 4 роки тому +12

      Tus vídeos me han ayudado muchísimo, me seguirán ayudando y ayudarán a muchas más personas en el futuro

    • @pedromanzueta2427
      @pedromanzueta2427 4 роки тому +4

      Y lo sigue siendo

    • @enzoleonel17
      @enzoleonel17 4 роки тому +2

      @@pedromanzueta2427 Y por siempre :'3

    • @zeusdg8
      @zeusdg8 3 роки тому

      ?

    • @luis170976
      @luis170976 Рік тому

      El mejor para enseñar 😭

  • @manolo131417
    @manolo131417 4 роки тому +17

    Grande Maestro, a pesar de todo sigo aprendiendo de ti. Hasta siempre

  • @SavitarSoul5797
    @SavitarSoul5797 3 роки тому +8

    Me costó muchísimo entenderlo, pero muy buen método, me siento orgulloso de entenderlo

  • @keninavila5915
    @keninavila5915 5 років тому +83

    Me ha costado un chingo entenderlo al 100% lo que hace cada función del ejercicio pero estoy satisfecho :v

  • @davidcavallo3661
    @davidcavallo3661 6 років тому +8

    Fua, gracias loco! Me sirvió un montón, además de que lo explicas de una manera super simple, me complementa algunas partes de la teoría que no termino de entender.
    Genio!

  • @rodrigovargassanchez6202
    @rodrigovargassanchez6202 2 роки тому +4

    Siempre agradecido, dejaste un gran legado

  • @juan-po1hf
    @juan-po1hf 5 років тому +13

    codigo con numeros aleatorios
    #include
    #include
    #include
    #include
    using namespace std;
    int main(){
    int numeros[100],cantidad,pos,aux,aleatorio;

    coutcantidad;

    srand(time(NULL));
    for(int i=0;i

  • @marceloarguello2344
    @marceloarguello2344 6 років тому +8

    sos un ídolo en serio!! muchas gracias, estoy siguiendo todos tus vídeos

    •  6 років тому +5

      Muchas gracias Marcelo 😃 Un saludo desde Perú

    • @marceloarguello2344
      @marceloarguello2344 6 років тому +3

      @ gracias igualmente desde Paraguay!!

  • @juanmister6548
    @juanmister6548 5 років тому +2

    Comparando un elemento con todos los elementos del vector de una tirada supongo el de inserción:
    int Numeros[] = { 5,3,4,2,1 };
    int i, j, aux;
    for (i = 0; i < 5; i++) {
    for (j = 0; j < 5; j++) {
    if (Numeros[ i ] < Numeros[ j ]) {
    aux = Numeros[ i ];
    Numeros[ i ] = Numeros[ j ];
    Numeros[ j ] = aux;
    }
    }
    }
    También se puede con el bucle for como con el Burbuja pero cambiando la comparación entre los elementos. Buenos vídeos y gracias.

    • @njx9-k4j
      @njx9-k4j Рік тому

      Yo también lo realice con 2 ciclos for :D, pero cambiando la condición a algo más parecida a la que se usa en el while del video, gracias por ayudarme a corroborar que es un método alternativo, saludos.
      for(int i=1;i

  • @3mgc272
    @3mgc272 2 місяці тому

    Mi héroe 🫂

  • @Usermmfkd2949-2
    @Usermmfkd2949-2 7 років тому +8

    Me encantan tus videos, pero me he quedado esperando tu video del metodo shell, ojala puedas hacerlo pronto!!

  • @osbaldovelasco2957
    @osbaldovelasco2957 6 років тому +4

    Me han servido mucho tus videos amigo gracias a ti no e reprobado je je je je saludos.....

  • @wendolywainwright8789
    @wendolywainwright8789 2 роки тому

    Fan de como lo explicas☘️

  • @CARLOSALFONSOANGELHERNANDEZ
    @CARLOSALFONSOANGELHERNANDEZ Рік тому +1

    un grande mi brou😞😞

  • @Simon-vn4jx
    @Simon-vn4jx 4 роки тому +5

    Gracias, me quedo claro, esta tarde tengo un examen!

  • @DragonWorldZFics
    @DragonWorldZFics 4 роки тому

    buen vídeo, me ayudo mucho con una tarea de programación, eres bueno explicando.

  • @josephcarranza6071
    @josephcarranza6071 3 роки тому

    Eres un grande! nunca me dejas de enseñar

    • @KuronoJhmx
      @KuronoJhmx 2 роки тому

      él ha fallecido

    • @sirarthur2421
      @sirarthur2421 Рік тому +1

      @@KuronoJhmx aun así, miles de los que programamos seguimos aprendiendo con él :'(

  • @juguemos7374
    @juguemos7374 3 роки тому +1

    Tengo una pregunta por que pone pos es decir de que el trabajo que ase pos también lo puede hacer el iterador?

  • @Thelimbers7
    @Thelimbers7 4 роки тому +2

    Mi propia versión del algoritmo:
    // Ordenamiento por inserción
    #include
    using namespace std;
    int main(){
    int Numeros[100];
    int N, Auxiliar = 0;
    int Contador = 0;
    cout > N;
    for (int i = 0; i < N; i++){
    cout 0){

    Auxiliar = Numeros[Contador];

    Numeros[Contador] = Numeros[Contador - 1];
    Numeros[Contador - 1] = Auxiliar;
    Contador -= 1;
    }
    }
    cout

  • @Adolin.Kholin.
    @Adolin.Kholin. 6 років тому +5

    Es un poco complicado de recordar. Pero lo importante es que sepan de su existencia y mas importante aun que sepan como corre, lo memorizaran con el tiempo.

    • @EroSenninZZ
      @EroSenninZZ 6 років тому +2

      dante arena y para que recordarlo? Con solo entenderlo y practicarlo unas cuantas veces se te queda

  • @hillmtz6036
    @hillmtz6036 4 роки тому

    Me encantan tus vídeos !! 😀👌

  • @Muffewe
    @Muffewe 2 роки тому

    Ah... 😪 Hasta ahora y a futuro me seran de ayuda sus video

  • @Boss-jq9ii
    @Boss-jq9ii 2 роки тому

    Me costó 2 días entender esto al 100% XD

  • @georgietula1719
    @georgietula1719 2 роки тому

    grande pibe, me hiciste aprobar programacion

  • @oli23gamer12
    @oli23gamer12 5 років тому +13

    Aquí se los dejo el "Ordenamiento por inserción" con Python:
    from random import *
    def generar_matriz(cant, inicio, fin):
    matriz = []
    for i in range(cant):
    matriz.append(randint(inicio, fin))
    return matriz
    matriz = generar_matriz(10,0,20)
    print(f"No ordenado: {matriz}")
    for i in range(len(matriz)):
    pos = i #Posicion en la matriz
    aux = matriz[i] #Variable Auxiliar
    while pos > 0 and matriz[pos - 1] > aux: #While solo cuando Posicion > 0
    matriz[pos] = matriz[pos - 1] #Matriz[posicion - 1] > auxiliar
    pos -= 1 #Le resta uno a la posicion
    matriz[pos] = aux #Se le asigna "aux" a la matriz[pos]
    print(f"Ordenado: {matriz}")

  • @Yadira-o3w
    @Yadira-o3w 5 місяців тому

    Gracias 👍

  • @rubenvID
    @rubenvID Рік тому

    ayuda aux=numero[i] como que va guardar la pregunta que va al macenar aso no entiendo?

  • @jessicaalvarez16
    @jessicaalvarez16 4 роки тому

    Buen video, al principio me costó entender como hacerlo pero después ya
    Cecyt 14,4IV6, Jessica Álvarez

    • @Bulldog-Chelista
      @Bulldog-Chelista 4 роки тому

      en el cecyt les enseñan esto?, yo soy de la carrera de ing. en sistemas y apenas lo estoy viendo. Incredibol... Saludos

    • @CS-tz1gg
      @CS-tz1gg 3 роки тому

      Que estudian en el cecyt? perdón la ignorancia xd

  • @anthonyavila6267
    @anthonyavila6267 3 роки тому

    Gracias por la ayuda uwu
    Messirvio el video

  • @gloriavalladaressalinas8332
    @gloriavalladaressalinas8332 8 років тому +12

    Ale, una pregunra: ¿Sería incorrecto dejarle solo la "i" en lugar de "pos?, por ejemplo dentro del 'while' que dijera (i>0) ?

    •  8 років тому +17

      Hola :) para el algoritmo seria correcto, ya que si omites la variable pos, y utilizas solo la i, funcionaría igual, solo que para hacer más entendible el código, utilice otra variable llamado pos.

    • @gloriavalladaressalinas8332
      @gloriavalladaressalinas8332 8 років тому +2

      Gracias(:

    •  8 років тому +2

      de nada Gloria :)

    • @martinnieva8484
      @martinnieva8484 7 років тому

      Estaba por comentar lo mismo hasta que vi tu comentario jaja.

    • @Kazzoi1
      @Kazzoi1 7 років тому +10

      creo que no seria correcto por que restarias la i dentro del bucle y cuando saliera afuera no cogeria el numero que corresponde para analizar dentro del bucle

  • @piero6718
    @piero6718 5 місяців тому

    alguien sabe de otro curso libro o material que me ayude con este tema de algoritmos? gracias!

  • @DanielGarcia-gg9fv
    @DanielGarcia-gg9fv 8 років тому +10

    loco el link de este video es del ejercicio anterior, o sea del metodo burbuja!
    no se si es intencional o no.
    Saludos. desde Venezuela!!

    •  8 років тому +3

      acabo de corregir el link :)

    • @DanielGarcia-gg9fv
      @DanielGarcia-gg9fv 8 років тому +3

      Gracias CAPO !!

  • @JuanManuelJuradoRubik
    @JuanManuelJuradoRubik 4 роки тому +2

    Hola, si alguien sería tan amable de aclararme esta duda me haría un gran favor:
    En el bucle while, por que se debe utilizar el aux y no directamente numeros[pos], porque estuve probando y funciona mal con el numeros [pos], pero valen lo mismo. Muchas gracias

    • @JuanManuelJuradoRubik
      @JuanManuelJuradoRubik 4 роки тому +1

      Yo en realidad no utilicé el pos, simplemente utilicé la variable i, ahora adejo mi programa
      #include}
      #include
      using namespace std;
      int main(){

      int numeros[]={3,4,5,1,2},aux,i;

      for(i=0;i0) && (numeros[i-1] > numeros[i])){

      numeros[i] = numeros[i-1];
      i--;
      }
      numeros[i]=aux;
      }

      for(i=0;i

    • @lennart3826
      @lennart3826 4 роки тому

      @@JuanManuelJuradoRubik Si puedes ver dentro del bucle while a numeros[i] le asignas el valor de numeros[i-1], esto causa que tu bucle solo se ejecute una sola vez, por esta razon es importante la variable aux.
      Espero haberte ayudado

    • @arren0929
      @arren0929 2 роки тому +1

      Si te fijas el while es un bucle, y dentro de el, el pos es pos--, cambia su valor en cada repeticion del while, mientras el while sigua cumpliendo su condicion el for no continua sus repeticiones. por eso es aux ya que no cambia el valor sin antes concluir el while

  • @Churly25
    @Churly25 3 роки тому

    Mi forma:
    int main(){

    int arreglo[5];
    int longitud = sizeof(arreglo) / sizeof(arreglo[0]);

    for(int i = 0; i

  • @javiermartinlarreafranco1886
    @javiermartinlarreafranco1886 3 роки тому

    TE AMO

  • @jhonstivenlarataipe598
    @jhonstivenlarataipe598 3 роки тому

    Como puedo ordenar una matriz solo las columnas y solo las filas

  • @kevingonzalez-ld6me
    @kevingonzalez-ld6me 4 роки тому

    numeros[post] no tenia el valor de numero[post-1], por que despues se le puede añadir el valor de axiliar como si estuviera vacia.

  • @kevinsosa1560
    @kevinsosa1560 3 роки тому

    porque tengo que ponerle i=1 para que me pueda imprimir igual?

  • @undostrestamarindo3737
    @undostrestamarindo3737 7 років тому +1

    No me gustó el i=0 dentro del bucle for, ya que las condiciones en el ciclo while hacen que en la primera iteracion el arreglo sea numeros[-1] , esto deberia marcar un error pero no lo hace, en cambio si el i dentro del for es = 1 el algoritmo se mantiene, con esto la primera iteracion se puede comprobar adecuadamente.

  • @axelespinoza287
    @axelespinoza287 7 років тому +3

    Hola, oye es normal que tenga error de ordenamiento con más de 10 números?

  • @alb.leonel
    @alb.leonel 3 місяці тому

    Gracias.

  • @eduardopacompia4144
    @eduardopacompia4144 6 років тому +3

    Hola doc , porque en el codigo colocas pos - - ? cual es la explicacion? gracias

    • @VieriCartman
      @VieriCartman 6 років тому +1

      Recuerdas que para aumentar tu contador colocabas "contador++" eso significa que tu contador aumenta en uno.. como es un ciclo se va aumentando hasta que llegue a cierto numero.. Bueno en este caso disminuye así que sería "pos- -". Además en el minuto --6:58-- explica porque pone "pos- - " .

  • @Simon-vn4jx
    @Simon-vn4jx 4 роки тому

    Gracias, me ayudaste tengo un examen

  • @ion4497
    @ion4497 Рік тому

    genial !!

  • @aldebaranmoralesosorio6171
    @aldebaranmoralesosorio6171 4 роки тому

    Aldebaran M.4IV6.CECYT 14. Este vídeo me encello usar el ordenamiento de inserción.

  • @Bulldog-Chelista
    @Bulldog-Chelista 4 роки тому +4

    Explica muy bien, pero muy rapido, yo soy de lento aprendizaje kkrnal. Espero que te encuentres bien donde sea que estés =(

  • @breof4626
    @breof4626 6 років тому +1

    no entiendo este código le hice una prueba de escritorio y todo marcha bien hasta que llega cuando i = 3 el números [pos] = números [pos - 1] con esto números [i] y números [i-1] quedan con el valor de 4, ya no cumple la condición números [pos-1] > aux después sale del siclo while números [pos] = aux, queda números {2,3,1,4,5} la inquietud es como ordena el 1 si ya salio del siclo while que no pasaría a seguir el siclo for e incrementar la i lo que pasaría a el ultimo ordenamiento i=4 , como pasa de salir del while y pasa a entrar de nuevo al siclo while ???????

    • @66slots
      @66slots 4 роки тому

      Tienes razón, me pasó lo mismo

    • @artemioharoldperlaciosluqu5471
      @artemioharoldperlaciosluqu5471 4 роки тому

      despues de salir del bucle while, pos decrementa su valor en 1 y cambia el valor de numeros[pos]

  • @mendozaresendizcarlosdavid5186
    @mendozaresendizcarlosdavid5186 4 роки тому

    Se me complico al principio pero me resultó útil para realizar mi tarea,cecyt 14,4IV6,Carlos Mendoza

  • @alexhubert8141
    @alexhubert8141 6 років тому +1

    Otrod modo de codificacion usando FOR:
    #include
    using namespace std;
    int main() {
    int A[]={3,1,9,5,6,4,7,2,8,10};
    int aux;
    for (int i = 0; i < 10; ++i) {
    aux = A[i];
    for (i; i > 0 && A[i-1] > aux; --i) {
    A[i] = A[i-1];
    }
    A[i] = aux;
    }
    for (int k = 0; k < 10; ++k) {
    cout

    • @pablomora7969
      @pablomora7969 6 років тому

      como puedo hacer utilizando while o do while?

  • @miramontessanchezcarlos4360
    @miramontessanchezcarlos4360 4 роки тому +1

    Algo mas que aprender buen vídeo. cecyt 14 "Luis Enrique Erro" Carlos M 4IV6

  • @asd-lz6jf
    @asd-lz6jf 6 років тому +1

    como puedo hacer que el bucle funcione con cualquier tamaño de arreglo?

    • @xmanuel_dll2701
      @xmanuel_dll2701 5 років тому

      tendrías que calcular la longitud del arreglo, luego la longitud la tendrías que almacenar en una variable, esa variable es la que tienes que condicinoar en el bucle. longitud=strlen(arreglo); for(int i=0;i

  • @JP-fg4bp
    @JP-fg4bp 2 роки тому +2

    Como un reto a mi mismo decidí hacer el algoritmo sin ver el video, y creo que hice algo un poco mas simple
    #include
    int main(){
    int insercion[5], aux;
    for(int i=0; i

  • @sashapua7141
    @sashapua7141 4 роки тому +1

    y que diferencia hay con el ordenamiento por inserción "con intercambio"? alguien sabe?

    • @jorgematute1396
      @jorgematute1396 3 роки тому

      El ordenamiento por inserción es más eficiente que el método de burbuja/intercambio.

  • @Franoka
    @Franoka 2 роки тому

    No hace falta declarar post en el codigo, simplemente usas i

  • @jimmyandreserazo6831
    @jimmyandreserazo6831 2 роки тому

    hola un video en el cual mododifiques un arreglo

  • @mendozamunozarelifernanda6025
    @mendozamunozarelifernanda6025 4 роки тому

    Este tema me gusto mucho Cecyt 14 Luis Enrique Erro, Areli Mendoza, 4iv5

  • @Yadira-o3w
    @Yadira-o3w 5 місяців тому

    Podría hacer también del ordenamiento quickchof

  • @andrespinza8449
    @andrespinza8449 5 років тому

    Bien explicado

  • @TheCharrytaker
    @TheCharrytaker 6 років тому

    si le pido al usuario insertar los número, como sería? o sea no necesariamente del 1 al 5

    • @Adolin.Kholin.
      @Adolin.Kholin. 6 років тому

      Charrytaker InFaGames.com/
      int n;
      coutn;
      int numeros[n];
      for(int i=0; i

    • @Adolin.Kholin.
      @Adolin.Kholin. 6 років тому

      #include
      #include
      using namespace std;
      int main(){
      int n,aux,pos;
      coutn;
      int numeros[n];
      for(int i=0; i

    • @aliciamedina567
      @aliciamedina567 5 років тому

      @@Adolin.Kholin. me sirvio mucho tu ejemplo gracias!!!

    • @Adolin.Kholin.
      @Adolin.Kholin. 5 років тому

      @@aliciamedina567 no hay de que

  • @sofiasalcedolopez2493
    @sofiasalcedolopez2493 4 роки тому

    Amigos, no puedo entender porqué el ordenamiento de burbuja requiere 2 for y el de inserción sólo uno. Ayuda :(

    • @josuemedina6882
      @josuemedina6882 4 роки тому +1

      For y While son bucles, ambos. Pero el for más se utiliza para una iteración con una condición más sencilla, en cambio while se utiliza cuando la condición es más compleja, ambos cumplen con crear un bucle, pero ahí está la diferencia como lo entiendo uo.

  • @ymcy2329
    @ymcy2329 8 років тому

    hola muchas gracias por tu tiempo y explicacion en los videos son muy entendible pero mi duda es la siguiente en vez de tener los valores en el arreglo como seria si fuesen valores introducidos directamente por el usuario es posible.? podria explicarme.

    • @AlitaDePolloKC
      @AlitaDePolloKC 7 років тому

      seria lo mismo, podes hacer q el usuario los digite, usas un for para q digite los 'n' numeros q quieres

    • @Adolin.Kholin.
      @Adolin.Kholin. 6 років тому +1

      #include
      #include
      using namespace std;
      int main(){
      int n,aux,pos;
      coutn;
      int numeros[n];
      for(int i=0; i

  • @paredesgamboacarloseduardo3569
    @paredesgamboacarloseduardo3569 4 роки тому

    Cecyt 14 Carlos Paredes 4iv5 Aprendi el ordenamiento por inserción

  • @fernandoreta4084
    @fernandoreta4084 5 років тому

    En que numero de video se empiezan a ver subprogramas

  • @sepulvedachavezivanemmanue5997
    @sepulvedachavezivanemmanue5997 4 роки тому

    Este video de esta plataforma me ayudo a retomar temas que
    no sabía y mejorar un poco en mi programación respecto a este programa
    aplicarlo en mis actividades
    CECyT_14_4IV5_Ivan_Emmanuel_S

  • @AldairMorgan
    @AldairMorgan 2 місяці тому

    I lovio

  • @martinezmenaximena4413
    @martinezmenaximena4413 4 роки тому

    Es un buen video,explica muy bien
    Ximena M 4IV5 cecyt 14

  • @ramonfelixmartorell
    @ramonfelixmartorell Рік тому

    Buenas ...
    Comparto. Solo agregué la interacción con el usuario con ingreso de datos ideales (sin errores de entradas):
    /*Ordenamientos
    Ordenamiento por inserción
    */
    #include
    #include
    using namespace std;
    int main(){
    int numeros[100];
    int cantNum;
    int i, pos, aux;

    cout

  • @herborbord8958
    @herborbord8958 3 роки тому

    Yo no entendí muy bien si la variable pos tenía algún uso específico y lo intenté sin la variable pos.
    #include
    #include
    #include
    using namespace std;
    int main(){
    int num[]={4,2,3,1,5};
    int i,pos,aux;

    for(i=0; i0) && num[i-1]>num[i]){
    num[i]=num[i-1];
    num[i-1]=aux;
    i--;
    }

    }
    cout

  • @vicenteroque7470
    @vicenteroque7470 4 роки тому +1

    aqui dejo el codigo un poco modificado para que muestre como lo va haciendo
    (obviamente va dentro del main nosea pendejo)
    int numeros[]={4,2,3,1,5};
    int i,k,pos,aux;

    for(i=0;i0 && numeros[pos-1]>aux)
    {
    numeros[pos]=numeros[pos-1];
    pos--;

    }
    numeros[pos]=aux;
    for(k=0;k

  • @danielmedrano5637
    @danielmedrano5637 6 років тому

    NICE!!

  • @AL007-MC
    @AL007-MC 4 роки тому

    cecyt 14 4IV5 Gabriela M.
    me parecio muy entretenido y curioso el video

  • @hielitohot5767
    @hielitohot5767 3 роки тому

    Vean situaciones, no solo números, ayuda mucho XD

  • @Kazzoi1
    @Kazzoi1 7 років тому +1

    yo lo hago igual pero dentro del bucle utilizo el metodo de la burbuja no se si esto todabia sera por inserccion
    //ordenamiento por inserccion
    #include
    #include
    using namespace std;
    int main(){
    int numero[]={2,5,1,4,3};
    int i,j,x,aux;
    for(i=0;i0)&&(numero[x-1]

  • @gabrielaatahuachi2624
    @gabrielaatahuachi2624 7 років тому +1

    quiero saber la explicacion del metodo de MergeSort con una explicacion (teoría) y ejemplo (bien explicado)

  • @garciagardunojesus3888
    @garciagardunojesus3888 4 роки тому

    El ordenamiento por Inserciones muy útil
    CECyT_14_4IV6_Jesús_García

  • @shelomauas5763
    @shelomauas5763 6 років тому +1

    #include
    using namespace std;
    int cantidad, *dir_cantidad;
    void pedir_datos();
    void mostrar_arreglo(int,int*);
    void ordenando(int, int*);
    void ordenado(int, int*);
    int main()
    {
    pedir_datos();
    mostrar_arreglo(cantidad, dir_cantidad);
    ordenando(cantidad, dir_cantidad);
    ordenado(cantidad, dir_cantidad);
    system("pause");
    return 0;
    }
    void pedir_datos()
    {
    cout > cantidad;
    dir_cantidad = new int[cantidad];
    cout > *(dir_cantidad + i);
    }
    }
    void mostrar_arreglo(int num_max, int* inicio)
    {
    cout

  • @HJnice
    @HJnice 6 місяців тому

    // ordenamiento por insercion
    #include
    using namespace std;
    int main(){
    int numero[]={3,5,2,1,4},i,j,aux;
    for(i=0;i

  • @brendahernandez1288
    @brendahernandez1288 4 роки тому

    CECyT #14.
    4iv6.
    Brenda Hernández.
    Me gustó este tutorial, aunque creo que debería verlo algunas veces mas para entenderle mejor.

  • @Fushikimota
    @Fushikimota 4 роки тому +1

    //Ordenamiento por insercion
    //Para mi es mas entendible el codigo de esta forma:
    #include
    #include
    using namespace std;
    int main()
    {
    int num[] = {4,1,2,3,5};
    int aux=0;

    for(int i=1;i

  • @mariajuliaramirezramos7179
    @mariajuliaramirezramos7179 7 років тому

    TIENES EJEMPLOS metodo shell

  • @danielpineda3824
    @danielpineda3824 Рік тому

    Pasos del algoritmo de ordenamiento por insercion:
    1) Si el elemento es el primero i=0, ya esta ordenado
    2) Pasar al siguiente elemento
    3) Guardar en una variable el indice anterior i-1
    4) Guardar en una variable temporal el numero actual
    5) (numero izquierda) > (numero actual)
    SI el numero q esta a la izquierda es mayor q el numero actual (temporal) entonces intercambiar numeros, repetir este paso 5) hasta que NO se cumpla mas esta condicion
    6) Continuar iteracion en el elemento actual i
    7) Repetir pasos 1) hasta 6) hasta q todos los numeros esten ordenados
    8) Después de los pasos anteriores el array se ordena de menor a mayor (ascendente).

  • @richelavendano786
    @richelavendano786 2 роки тому

    Yo lo hice de esta forma:
    #include
    #include
    using namespace std;
    int main ()
    {
    int vector[]={5,3,4,1,2},band=0;

    for(int j=0 ; j

  • @kovacz9914
    @kovacz9914 6 років тому

    ¿Esto se considera el Bucket Sort? 0:

  • @maximinolopez1998
    @maximinolopez1998 4 роки тому +1

    No logro entender al 100 como funciona el codigo

    • @kevingonzalez-ld6me
      @kevingonzalez-ld6me 4 роки тому

      //Ordenamiento por insercion
      #include
      #include
      using namespace std;
      int main(){//pos=i 0 1 2 3 4. o una felcha que recorre los valores.
      int numeros[]={4,2,3,1,5}; // aux=numeros{i}= (4,2,3,1,5) valores del arreglo.
      int i, pos, aux;// iteradores, axuliar guarda valores <
      // 0) 4 2 3 1 5
      for(i=0;i 0 . si numeroAlaizquierda > numeroActual (cambio); numero(i=1,(2) > aux (i=1, (2) siempre sera igual
      while((pos>0) && (numeros[pos-1] > aux)){ //, pero si a numero le -1, es la posicion antes o sea numeros(i=0 (4)->aux(i=1(2) entonces 4>2 (cambio) 2 4
      numeros[pos] = numeros [pos-1];//numeros(0) |guarda| numerosPost-1(0) 4), = numeros(0) 4) 0
      pos--; // post i= 4-3-2-1-0
      }
      numeros[pos] = aux; // almacena auxiliar para que obtenga el valor en el bucle de que numeros vamos.
      }

      cout

    • @kevingonzalez-ld6me
      @kevingonzalez-ld6me 4 роки тому +1

      en el programa deje comentarios de como yo lo entedi.

  • @diegoperezgonzalez4144
    @diegoperezgonzalez4144 4 роки тому

    El mismo código pero pidiendo valores.
    #include
    #include
    #include
    using namespace std;
    int main (){
    char n[5];
    int i,pos,aux;
    //Algortimo del ordenamiento por inserción si el numero de la izquierda es mayor que el numero
    //actrual se cambia de lugar niz>nactual cambian
    cout

  • @omarcollicorrea7705
    @omarcollicorrea7705 5 років тому +2

    como le hago para que el usuario ingrese los numeros?

    • @mathinthegarageodi4554
      @mathinthegarageodi4554 5 років тому +1

      Así:
      int n;
      //Para el número de elementos que quieras.
      int aux;
      coutn;
      cout

  • @lysbbb
    @lysbbb 4 роки тому

    Aunque el tema se entendió costo trabajo ver como funciona Laura C. CECyT 14 4IV6

  • @gordosnkrs
    @gordosnkrs 5 років тому

    para imprimirlo usando el printf como quedaria? alguien que me pueda explicar por favor

    • @mecanma
      @mecanma 5 років тому +1

      puedes imprimirlo haciendo un bucle que recorra el array y lo imprima

  • @cristianperez-mg7dp
    @cristianperez-mg7dp 8 років тому +4

    ¿Este algoritmo es valido como ordenamiento por inserción?
    for(int i=1; i0; j--){
    if(num[j-1]>num[j]){
    aux = num[j];
    num[j] = num[j-1];
    num[j-1] = aux;
    }
    }
    }

  • @rodrigogarciatrejo8084
    @rodrigogarciatrejo8084 2 роки тому

    TIENE UN ERROR EL CÓDIGO

    • @rodrigogarciatrejo8084
      @rodrigogarciatrejo8084 2 роки тому

      DEBE DE QUEDAR ASI:

    • @rodrigogarciatrejo8084
      @rodrigogarciatrejo8084 2 роки тому

      for(int i = 1; i0) && (numeros[pos-1]>aux))
      {
      numeros[pos] = numeros[pos-1];
      numeros[pos-1] = aux;
      pos--;
      }
      }

    • @rodrigogarciatrejo8084
      @rodrigogarciatrejo8084 2 роки тому

      @@dreaming7164 si ingresas número diferentes o una cantidad mas grande no sirve

    • @rodrigogarciatrejo8084
      @rodrigogarciatrejo8084 2 роки тому

      @@dreaming7164 brother, cambia los números con los que hace el ejemplo, al menos unas 3 veces y me dices si se ordena

  • @ChristianRodriguez-tm3jg
    @ChristianRodriguez-tm3jg 2 роки тому

    fulll complicado.. debo analizarlos mas

  • @barlog6679
    @barlog6679 3 роки тому

    esta formad de hacer el metodo es correcta?
    #include
    using namespace std;
    int main()
    {
    int numeros[] = {2,3,5,4,1};
    int a;
    for (int i=0; i0 && (numeros[i-1]>numeros[i])){
    numeros[i]=numeros[i-1];
    numeros[i-1]=a;
    i--;
    }
    }
    for (int i=0; i

  • @Joel-tl9xq
    @Joel-tl9xq 5 років тому +2

    Ese codigo esta algo confuso, yo hice este como lo pude entender:
    #include
    using namespace std;
    main()
    {
    int numeros[]={4,2,3,1,5};
    int i,j,aux;
    for(i=0;i0 && numeros[j-1]>numeros[j])
    {
    aux=numeros[j]; numeros[j]=numeros[j-1]; numeros[j-1]=aux;
    j--;
    }
    }
    for(i=0;i

  • @shelomauas5763
    @shelomauas5763 6 років тому

    nos falto la tarea para saber si entendimos

  • @learning2895
    @learning2895 4 роки тому

    El anterior no lo pude hacer solo, pero este sí, así lo hice:
    int main(void){
    int numeros[]= {4,5,1,3,2};
    int aux;
    for (int i=1; i0 && numeros[x]

  • @backend-cataphract
    @backend-cataphract 6 років тому

    y como hago si son con numeros al azar?

  • @daft414
    @daft414 3 роки тому +1

    A alguien mas no le imprime nada?

  • @keninavila1960
    @keninavila1960 4 роки тому

    intente hacer el método de inserción a mi manera y me salio así v:
    #include
    #include
    using namespace std;
    int main(){
    int aux,c,d,var[4]={3,1,4,5};
    for(c=0;cvar[c+1]){
    aux=var[c+1];
    var[c+1]=var[c];
    var[c]=aux;
    c--;
    }
    }
    for(d=0;d

  • @ariantorres2085
    @ariantorres2085 4 роки тому +2

    NO entiendo, ayuda

    • @kevingonzalez-ld6me
      @kevingonzalez-ld6me 4 роки тому +2

      //Ordenamiento por insercion
      #include
      #include
      using namespace std;
      int main(){//pos=i 0 1 2 3 4. o una felcha que recorre los valores.
      int numeros[]={4,2,3,1,5}; // aux=numeros{i}= (4,2,3,1,5) valores del arreglo.
      int i, pos, aux;// iteradores, axuliar guarda valores <
      // 0) 4 2 3 1 5
      for(i=0;i 0 . si numeroAlaizquierda > numeroActual (cambio); numero(i=1,(2) > aux (i=1, (2) siempre sera igual
      while((pos>0) && (numeros[pos-1] > aux)){ //, pero si a numero le -1, es la posicion antes o sea numeros(i=0 (4)->aux(i=1(2) entonces 4>2 (cambio) 2 4
      numeros[pos] = numeros [pos-1];//numeros(0) |guarda| numerosPost-1(0) 4), = numeros(0) 4) 0
      pos--; // post i= 4-3-2-1-0
      }
      numeros[pos] = aux; // almacena auxiliar para que obtenga el valor en el bucle de que numeros vamos.
      }

      cout

    • @kevingonzalez-ld6me
      @kevingonzalez-ld6me 4 роки тому +1

      ponlo en c++ para que entiendas mejor los comentarios. deje comentario que indicar el porque se uso cada funcion.