Beispiel #1
0
'''
exercise heapq
'''
import heapq
import gen_num

num_lst = gen_num.gen_num1(20)
# print(num_lst)
heapq.heapify(num_lst)
result = [heapq.heappop(num_lst) for _ in range(len(num_lst))]
print(result)
Beispiel #2
0
import gen_num
num_lst = gen_num.gen_num1(10)


# print(num_lst)
def merge_sort(A):
    '''
    Args:
    A:num_lst
    '''
    length = len(A)
    if length == 1:
        return A
    mid = length // 2
    left = merge_sort(A[:mid])
    right = merge_sort(A[mid:])
    return merge(left, right)


def merge(left, right):
    i, j = 0, 0
    result = []
    while i < len(left) and j < len(right):  #ij[0,n-1]
        if left[i] < right[j]:
            result.append(left[i])
            i += 1
        else:
            result.append(right[j])
            j += 1
    result += left[i:]
    result += right[j:]
Beispiel #3
0
import gen_num

num_lst = gen_num.gen_num1(30)
# print(num_lst)


def bubble_sort(A):
    '''
    Args:
    A;num_lst
    '''
    length = len(A)
    for i in reversed(range(1, length)):  #[n-1,1]
        for j in range(i):
            if A[j] > A[j + 1]:
                A[j], A[j + 1] = A[j + 1], A[j]

    return A


print(bubble_sort(num_lst))
Beispiel #4
0
import gen_num
lst = gen_num.gen_num1(100)
print('lst:', lst)

lst2 = gen_num.gen_num2(100)
print('lst2:', lst2)