编写一个有序数组类,类定义为SortedArray,要求对两个任意长度的数组分别进行排序,之后再将这两个有序数组合并,代码中需要使用运算符的重载和索引
时间: 2024-06-02 07:14:23 浏览: 77
class SortedArray:
def __init__(self, arr1, arr2):
self.arr = self.merge(self.sort(arr1), self.sort(arr2))
def sort(self, arr):
return sorted(arr)
def merge(self, arr1, arr2):
res = []
i = j = 0
while i < len(arr1) and j < len(arr2):
if arr1[i] < arr2[j]:
res.append(arr1[i])
i += 1
else:
res.append(arr2[j])
j += 1
res += arr1[i:]
res += arr2[j:]
return res
def __len__(self):
return len(self.arr)
def __getitem__(self, index):
return self.arr[index]
def __str__(self):
return str(self.arr)
阅读全文