[Python] Mergesort and index out of range in Python

Discussão em 'Python' iniciado por Stack, Março 19, 2025.

  1. Stack

    Stack Membro Participativo

    I wrote a merge sort algorithm and trying to figure out index out of range error. I checked the code in depth but could not see it so I do not have many things to write but I tried to follow the basic process of merge sort algorithm.

    def merge(a,lower,middle,upper,b):
    i=lower
    j=middle+1
    k=lower
    while(i<=middle and j<=upper):
    if(a<=a[j]):
    b[k]=a
    i=i+1
    else:
    b[k]=a[j]
    j=j+1
    k=k+1
    if(i>middle):
    while(j<=upper):
    b[k]=a[j]
    j=j+1
    k=k+1
    elif(j>upper):
    while(i<=middle):
    b[k]=a
    i=i+1
    k=k+1
    return b

    def mergesort(a,lower,upper):
    if(lower<upper):
    middle=(lower+upper)//2
    mergesort(a,lower,middle)
    mergesort(a,middle+1,upper)
    s=merge(a,lower,middle,upper,[])

    mergesort([1,3,2,7,11,10],0,5)

    Continue reading...

Compartilhe esta Página