Esempio n. 1
0
def test_merge_part():
    from copy import copy
    how_many = 100
    max_range = 100000
    
    for x in xrange(10):
        for splitter in xrange(1,(how_many*2)):
            
            left_array = generate_int(1,max_range,splitter)
            right_array = generate_int(1,max_range,(how_many*2)-splitter)
            
            #sort both and merge into a one
            left_array.sort()
            right_array.sort()
            #print "\n\nThe left array is :",left_array
            #print "The right array is :",right_array
            
            main_array = left_array + right_array
            copy_main = copy(main_array)
            #print "The copy main is :",copy_main
            copy_main.sort()
            #print "The copy main is :",copy_main
            
            merger = MergeSort()
            merger.merge(main_array,0,splitter,(how_many*2))
            #print "The main array is :",main_array 
            assert copy_main == main_array
            
        if x%10==0:
            print "%d Test completed for merge "%x
Esempio n. 2
0
def test_merge_sort():
    from copy import copy 
    max_range = 100
    how_many = 10

    for x in xrange(1):

        m = MergeSort()
        main_array = generate_int(1,max_range,how_many)
        copy_array = copy(main_array)
        copy_array.sort()
        m.implement(main_array,0,len(main_array))

        assert copy_array == main_array