我们可以使用一个字典对另一个数组进行映射,然后根据该字典对待排序数组进行排序。如果元素不在字典中,我们可以将其添加到结果数组的末尾。
代码示例:
def sort_by_other(arr, other_arr): d = {v: i for i, v in enumerate(other_arr)} return sorted(arr, key=lambda x: d.get(x, len(other_arr)))
#测试示例 arr = [1, 2, 3, 5, 6, 7] other_arr = [3, 5, 7, 2, 1, 6] print(sort_by_other(arr, other_arr)) #输出:[3, 5, 7, 2, 1, 6]