ALGORITMO 7
ORDENAMIENTO EREW RECURSIVO CON MERGE SECUENCIAL
#ORDENAMIENTO EREW RECURSIVO CON MERGE SECUENCIAL
#OSCAR SALGADO ALAMILLA
import os
#DEFINICION DE FUNCIONES
def mergeSort(alist):
print("DIVIDIENDO ",alist)
if len(alist)>1:
mid = len(alist)//2
lefthalf = alist[:mid]
righthalf = alist[mid:]
mergeSort(lefthalf)
mergeSort(righthalf)
i=0
j=0
k=0
while i<len(lefthalf) and j<len(righthalf):
if lefthalf[i]<righthalf[j]:
alist[k]=lefthalf[i]
i=i+1
else:
alist[k]=righthalf[j]
j=j+1
k=k+1
while i<len(lefthalf):
alist[k]=lefthalf[i]
i=i+1
k=k+1
while j<len(righthalf):
alist[k]=righthalf[j]
j=j+1
k=k+1
print("UNIENDO ",alist)
#PRINCIPAL
print "======= ORDENAMIENTO EREW RECURSIVO CON MERGE SECUENCIAL ======="
alist = []
x=int(raw_input("INGRESE EL TAMANO DEL VECTOR: "))
i=1
while (i<=x):
n=int(raw_input("INGRESE DIGITO: "))
alist.append(n)
i=i+1
print 'MOSTRANDO EL VECTOR DE DIGITOS ORDENADOS: '
print(alist)
os.system('pause')
No hay comentarios:
Publicar un comentario