Professional Documents
Culture Documents
Algoritmo de ordenamiento
Clasificación
Estabilidad
Cuando elementos iguales (indistinguibles entre sí), como números enteros, o más
generalmente, cualquier tipo de dato en donde el elemento entero es la clave, la
estabilidad no es un problema. De todas formas, se asume que los siguientes
pares de números están por ser ordenados por su primer componente:
En este caso, dos resultados diferentes son posibles, uno de los cuales mantiene
un orden relativo de registros con claves iguales, y una en la que no:
Ordenar según una clave primaria, secundaria, terciara, etc., puede ser realizado
utilizando cualquier método de ordenamiento, tomando todas las claves en
consideración (en otras palabras, usando una sola clave compuesta). Si un
método de ordenamiento es estable, es posible ordenar múltiples ítems, cada vez
con una clave distinta. En este caso, las claves necesitan estar aplicadas en orden
de aumentar la prioridad.
(3, 7) (3, 1) (4, 1) (4, 6) (después de ser ordenado por el primer valor)
(3, 1) (4, 1) (4, 6) (3, 7) (después de ser ordenando por el segundo valor,el orden
por el primer valor es perturbado)
METODOS DE BUSQUEDA
Búsqueda secuencial.
Este tipo de búsqueda consiste en examinar, a partir del primer elemento y de uno
en uno, hasta encontrar el dato buscado o bien llegar al final de la lista que puede
estar almacenada en archivo o arreglo. En este tipo de listas los elementos
pueden o no estar clasificados, ya que se empieza a comparar de uno en uno los
elementos de la lista y no importa su orden para realizar la búsqueda, salvo para
el tiempo de ejecución. Si el elemento que se está buscando, se encuentra al
inicio de la lista, este tiempo, sería muy corto, pero si se encuentra al final, va a
tardar más y si el elemento que se desea buscar, no se encuentra en la lista, se
hizo necesario, recorrer toda la lista, para darse cuenta que no está en ella. Y si se
le aumenta a esto, que el número de elementos en la lista puede ser del orden de
cientos o miles, va a hacer mucho más tardado su ejecución. Esta búsqueda tiene
la ventaja de tener una fácil programación de su algoritmo.
inicio i=0
bandera = 0
bandera = 1
else i=i+1
fin
n0, n1 , n2 ,....n n _1
Cuyas llaves son: K0, K1, K2,....K n _ 1, donde n es ~ 0 y x es el valor del dato
que se está buscando.
Búsqueda binaria
inicio LI = 0
LS = n – 1
mientras LI ~LS M = Parte Entera (LI + LS) /2) si dato< lista[M] LS = M -1 en caso
contrario si dato> lista [M] LI = M +1
Fin
Dato, es el valor que se va a buscar en la lista; lista, es donde están los elementos
clasificados, LI es el límite inferior, LS es el límite superior, M es el apuntador de
en medio y N el número de elementos de la lista.
La utilización de los métodos por comparación de llaves son muy dependientes del
número de elementos, estos es, a mayor número de elementos son mayores las
comparaciones. Existe el grupo de búsquedas por transformación de llaves
(Hash), que aumenta la eficiencia, en cuanto al tiempo de ejecución, ya que
accede a los registros por lo general más rápidamente, pero va a depender de su
implementación.
Recuperación de datos
Otro escenario involucra una falla a nivel de disco, tal como un sistema de
archivos o partición de disco que esté comprometido, o una falla en el disco duro.
En cualquiera de estos casos, los datos no pueden ser fácilmente leídos.
Dependiendo de la situación, las soluciones pueden estar entre reparar el sistema
de archivos, la tabla de particiones o el registro maestro de cargado (MBR), o
técnicas de recuperación del disco duro que van desde la recuperación basada en
software de los datos corruptos a el reemplazo del hardware de un disco dañado
físicamente. Si la recuperación del disco duro es necesaria, el disco de por sí
típicamente ha fallado de manera permanente, y el propósito en vez de una
recuperación de una sola vez, es el de rescatar cualquier dato que pueda ser
leído.