Không chắc chắn nơi tôi đang đi sai với việc thực hiện của tôi sắp xếp hợp nhất trong python.python hợp nhất vấn đề sắp xếp
import sys
sequence = [6, 5, 4, 3, 2, 1]
def merge_sort(A, first, last):
if first < last:
middle = (first + last)/2
merge_sort(A, first, middle)
merge_sort(A, middle+1, last)
merge(A, first, middle, last)
def merge(A, first, middle, last):
L = A[first:middle]
R = A[middle:last]
L.append(sys.maxint)
R.append(sys.maxint)
i = 0
j = 0
for k in xrange(first, last):
if L[i] <= R[j]:
A[k] = L[i]
i = i + 1
else:
A[k] = R[j]
j = j + 1
merge_sort(sequence, 0, len(sequence))
print sequence
Tôi thực sự đánh giá cao nếu ai đó có thể chỉ ra điều gì đang phá vỡ việc triển khai sắp xếp hợp nhất hiện tại của tôi.
Bạn đang gặp phải sự cố gì? – michaelrccurtis
mẹo: 'đầu tiên
Đầu ra hiện tại cho chuỗi được cung cấp là [3, 1, 2, 5, 4, 6]. – nuce