Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # -*- coding: utf-8 -*-
- """
- Created on Sun Dec 2 20:29:31 2018
- @author: micha
- """
- A=[]
- from random import randint
- for i in range(0,100):
- A.append(randint(1,100)) #dodawnie losowanyc elemetow
- print(A)
- print()
- #from math import floor
- def MergeSort(A,p,k):
- if(p<k):
- q=(p+k)//2
- #q = floor((p+k)/2)
- MergeSort(A,p,q)
- MergeSort(A,q+1,k)
- Merge(A,p,q,k)
- def Merge(A,p,q,k):
- n1=q-p+1
- n2=k-q
- L=[0]*(n1)
- R=[0]*(n2)
- """
- L=[]
- R=[]
- """
- """for i in range(0,n1):
- L.append(A[p+i-1])
- for j in range(0,n2):
- R.append(A[q+j+1])
- """
- for i in range(0,n1):
- L[i]=A[p+i]
- for j in range(0,n2):
- R[j]=A[q+1+j]
- i=j=0
- z=p
- while(i<len(L) and j<len(R)):
- if(L[i]<R[j]):
- A[z]=L[i]
- i+=1
- else:
- A[z]=R[j]
- j+=1
- z+=1
- while(i<len(L)):
- A[z]=L[i]
- i+=1
- z+=1
- while(j<len(R)):
- A[z]=R[j]
- j+=1
- z+=1
- MergeSort(A,0,len(A)-1)
- print(A)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement