我想做一个 MergeSort 算法,我想从外部文件(如 txt)中获取我的数据,当我导入我的文件时,我得到了一些奇怪的结果 [9. 9. 9. 9.] 我的输入数据是 [12, 44, 11, 9] 我认为这是因为 numpy 导入,但我不确定。
import numpy as np
x = np.genfromtxt("data/123.txt", delimiter=',')
def mergeSort(alist):
print("Splitting ",alist)
if len(alist)>1:
mid = len(alist)//2
lefthalf = alist[:mid]
righthalf = alist[mid:]
mergeSort(lefthalf)
mergeSort(righthalf)
i=0
j=0
k=0
while i < len(lefthalf) and j < len(righthalf):
if lefthalf[i] < righthalf[j]:
alist[k]=lefthalf[i]
i=i+1
else:
alist[k]=righthalf[j]
j=j+1
k=k+1
while i < len(lefthalf):
alist[k]=lefthalf[i]
i=i+1
k=k+1
while j < len(righthalf):
alist[k]=righthalf[j]
j=j+1
k=k+1
print("Merging ",alist)
alist = x
mergeSort(alist)
print(alist)