Пример #1
0
def main():
    num = []
    for i in range(15):
        num.append(random.randint(0, 30))
    print("原始序列为:", num)
    item = merge_sort(num)
    print("排序之后:", item)
    print("找到的序列为:", bin_search(item, 20))
Пример #2
0
 def test_merge_sort(self):
     self.assertEqual([1, 5, 23, 57, 65, 1232],
                      merge_sort([1, 5, 65, 23, 57, 1232]))
Пример #3
0
 def test_merge_sort(self):
     self.assertTrue(is_sorted(merge_sort([1, 3, 2, 5, 65, 23, 57, 1232])))
Пример #4
0
from algorithms.sort import insertion_sort
from algorithms.sort import selection_sort
from algorithms.sort import quick_sort
from algorithms.sort import bubble_sort
from algorithms.sort import shell_sort
from algorithms.sort import radix_sort
from algorithms.sort import heap_sort
import time
from random import randint
ARRAY_LENGTH = 10000
if __name__ == "__main__":
#   merge sort
    my_list = [randint(0, 1000) for i in range(ARRAY_LENGTH)]
    print(my_list[:10])
    sot = time.perf_counter()
    my_list = merge_sort(my_list)
    eot = time.perf_counter()
    print("Total run time for merge sort",eot-sot)
    print(my_list[:10])
#   insertion sort
    my_list = [randint(0, 1000) for i in range(ARRAY_LENGTH)]
    print(my_list[:10])
    sot = time.perf_counter()
    my_list = insertion_sort(my_list)
    print(my_list[:10])
    eot = time.perf_counter()
    print("Total run time for insertion sort",eot-sot)
#   selection sort
    my_list = [randint(0, 1000) for i in range(ARRAY_LENGTH)]
    print(my_list[:10])
    sot = time.perf_counter()
Пример #5
0
 def test_merge_sort_simple_even(self):
     arr = [4, 3, 2, 1]
     arr_copy = arr[::]
     arr_copy.sort()
     self.assertEqual(merge_sort(arr), arr_copy)
Пример #6
0
 def test_merge_sort(self):
     arr = [1, 2, 1, 4, 1, 5]
     merge_sort(arr)
     self.assertListEqual(arr, [1, 1, 1, 2, 4, 5])
Пример #7
0
 def test_merge_sort_large(self):
     arr = random.sample(range(500), 500)
     arr_copy = arr[::]
     arr_copy.sort()
     self.assertEqual(merge_sort(arr), arr_copy)
Пример #8
0
from random import randint

from algorithms.search import linear_search, bin_search
from algorithms.sort import change_sort, bubble_sort, merge_sort, insert_sort, quick_sort

if __name__ == "__main__":
    lenght = 20
    mass = [randint(1, 1000) for i in range(int(lenght))]
    print('Random mass:', mass)
    sort = merge_sort(mass)
    print('Sorted mass:', sort)
    while True:
        search = bin_search(sorted(mass), int(input('Enter value:', )))
        print('Search:', list(search))
Пример #9
0
from algorithms.sort import merge_sort
import random

alist=[random.randint(1,100) for i in range(100)]

print(alist)
sorted_list=merge_sort(alist)
print(sorted_list)
Пример #10
0
 def test_merge_sort(self):
     self.assertEqual([1, 5, 23, 57, 65, 1232],
                      merge_sort([1, 5, 65, 23, 57, 1232]))
Пример #11
0
# Design and Analysis of Data Structures and Algorithms

import random
from algorithms.sort import bubble_sort, selection_sort, insertion_sort, merge_sort, quick_sort

numbers = random.sample(range(100, 999), 25)

print("Unsorted List")
print(numbers)

print("Bubble Sort")
bs = bubble_sort(numbers)
print(bs)

print("Selection Sort")
ss = selection_sort(numbers)
print(ss)

print("Insertion Sort")
ins = insertion_sort(numbers)
print(ins)

print("Merge Sort")
ms = merge_sort(numbers)
print(ms)

print("Quick Sort")
qs = quick_sort(numbers)
print(qs)