Exemple #1
0
def main():
    list1 = []

    num = input("\t欢迎使用排序演示程序\n" + "请输入你想要产生的随机数个数:")
    for i in range(int(num)):
        list1.append(int(random.random() * 100))

    length = len(list1)

    print("\n=========排序方法选择==========\n" + "1.插入排序		2.折半插入排序\n" +
          "3.希尔排序		4.冒泡排序   \n" + "5.快速排序		6.直接选择排序\n" +
          "7.堆排序			8.基数排序    \n")
    fun = input("请输入你想要使用的排序函数:")

    if int(fun) < 1 or int(fun) > 8:
        print("没有这个排序函数,请重新选择")
        time.sleep(3)
        os.system("clear")
        main()
    elif fun == '1':
        st.insertSort(list1, length)
    elif fun == '2':
        st.binaryInsertSort(list1, length)
    elif fun == '3':
        st.shellSort(list1, length)
    elif fun == '4':
        st.bubbleSort(list1, length)
    elif fun == '5':
        st.quickSort(list1, 0, length - 1)
    elif fun == '6':
        st.directSelectSort(list1, length)
    elif fun == '7':
        st.heapSort(list1, length)
    elif fun == '8':
        st.radixSort(list1)

    print("\n---------------------------分割线--------------------------\n")
    main()
def shellSortTime():

    SETUP_CODE = '''
import sort
import random
testList = []
for i in range(50000):
    testList.append(random.randint(0,1000))'''

    TEST_CODE = '''
sort.shellSort(testList)'''

    times = timeit.repeat(setup=SETUP_CODE, stmt=TEST_CODE, repeat=1, number=1)

    print('shellSortTime: {}'.format(min(times)))
Exemple #3
0
    print('2 - Scan Array')
    print('3 - Selection Sort')
    print('4 - Insertion Sort')
    print('5 - Bubble Sort')
    print('6 - Shell Sort')
    print('7 - Quick Sort')
    print('0 - Exit')
    print('==================')


def scanArray():
    for i in range(length):
        array[i] = int(input('Enter the value [' + str(i) + ']: '))
    return array


op = 1
while op:
    printMenu()
    op = int(input('Choose an option: '))

    if op == 0: print('You chose to leave')
    elif op == 1: print(array)
    elif op == 2: print(scanArray())
    elif op == 3: print(sort.selectionSort(array))
    elif op == 4: print(sort.insertionSort(array))
    elif op == 5: print(sort.bubbleSort(array))
    elif op == 6: print(sort.shellSort(array))
    elif op == 7: print(sort.quickSort(array, 0, length - 1))
    else: print('Please choose a valid option')
Exemple #4
0
import random, time


from sort import shellSort

mylist = [54,26,93,17,77,31,44,55,20]
shellSort( mylist )
print( mylist )
end_time = timer()
quicktime = (end_time - start_time)
print('------------------------------------\n')
print('Tempo = %f sec\n' % quicktime)

random.shuffle(data)

start_time = timer()
print('------------------------------------\n')
print('\tshell sort\t')
print('------------------------------------\n')
print('Antes de ordenado: ')
print(data)
print('------------------------------------\n')
print('Depois de ordenado: ')
s = shellSort(data)
print(s)
end_time = timer()
shelltime = (end_time - start_time)
print('------------------------------------\n')
print('Tempo = %f sec\n' % shelltime)

random.shuffle(data)

start_time = timer()
b = bucketSort(data)
print('------------------------------------\n')
print('\tBucket sort\t')
print('------------------------------------\n')
print('Antes de ordenado: ')
print(data)
            for i in range(int(sys.argv[2])):
                testList.append(random.randint(0, 10000))
            print(testList, "\n")
            sort.quickSort(testList)
            print(testList)
    else:
        testList = []
        for i in range(int(sys.argv[2])):
            testList.append(random.randint(0, 10000))
        sort.quickSort(testList)
        print("LIST SORTED")

elif sys.argv[1] == "ShellSort":
    if len(sys.argv) > 3:
        if sys.argv[3] == "PRINT":
            testList = []
            for i in range(int(sys.argv[2])):
                testList.append(random.randint(0, 10000))
            print(testList, "\n")
            sort.shellSort(testList)
            print(testList)
    else:
        testList = []
        for i in range(int(sys.argv[2])):
            testList.append(random.randint(0, 10000))
        sort.shellSort(testList)
        print("LIST SORTED")
else:
    print("\n" +
          "Please retype with the correct order or notation shown in the file")