Algoritmos de inserción en un arreglo ordenado sin repetición.

6.544 visualizaciones

Publicado el

Publicado en: Educación
0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
6.544
En SlideShare
0
De insertados
0
Número de insertados
5
Acciones
Compartido
0
Descargas
41
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

Algoritmos de inserción en un arreglo ordenado sin repetición.

  1. 1. Algoritmos de inserción en un arreglo ordenado sin repetición.
  2. 2. <ul><li>En el caso de tener un arreglo (array) ordenado en el algoritmo no se debe especificar ninguna posición, los elementos ocupan las posiciones que se les son asignadas según su valor. </li></ul><ul><li>Dentro de este tipo de algoritmo pueden presentarse dos situaciones: </li></ul><ul><ul><li>Los elementos no pueden encontrarse repetidos en la lista. </li></ul></ul><ul><ul><li>Los elementos pueden repetirse. </li></ul></ul>
  3. 3. LOS ELEMTOS NO PUEDEN ENCONTRARSE REPETIDOS EN LA LISTA. <ul><li>Al darse este caso dentro de la lista, nos arroga un mensaje o un código de error indicándonos que el elemento no se puede insertar. Si esto no sucede, se tendrá que buscar la posición que le corresponde en el arreglo y haga la inserción en la línea que le corresponde, que es de forma similar a la que se utiliza en el caso de arreglo no ordenados. </li></ul>
  4. 4. <ul><li>En este caso nos da igual que el elemento este o no en el arreglo. Simplemente utilizamos el método binario para que determine la posición donde se encuentra alojado el elemento o donde este debería estar, y en esta posición se debe insertar el nuevo numero. </li></ul>
  5. 5. Numero ingresado por el usuario Presenta mensaje de error Matriz llena 1 2 3 4
  6. 6. 3 Numero ingresado por el usuario Presenta mensaje de error: elemento ya existente 1 2 3
  7. 7. 3 Numero ingresado por el usuario Inserción del numero ingresado 1 5 7
  8. 8. <ul><li>public static int InsertarOrdenada1(int []vector,int elemento, Entero ultimo){ </li></ul><ul><li>Entero posicion = new Entero(); </li></ul><ul><li>Booleano encontrado=new Booleano(); </li></ul><ul><li>if(ultimo.v==vector.length-1){ </li></ul><ul><li>return -1;//código de error matriz llena </li></ul><ul><li>}else{ </li></ul><ul><li>Busqueda.binaria(vector,elemento,0,ultimo,posicion,encontrado); </li></ul><ul><li>if (encontrado){ </li></ul><ul><li>return -2;//código de error, elemento repetido </li></ul><ul><li>else{ </li></ul><ul><li>for (i = ultimo; i >=posicion.v; i-) { </li></ul><ul><li>vector[i+1]=vector[i]; </li></ul><ul><li>vector[posicion.v]=elemento; </li></ul><ul><li>ultimo.v++; </li></ul><ul><li>return 0;//código de terminación </li></ul><ul><li>}//fin del else interno </li></ul><ul><li>}//fin del else externo </li></ul><ul><li>}// fin de insertar </li></ul>

×