📅  最后修改于: 2023-12-03 15:40:34.464000             🧑  作者: Mango
如果你需要检查一个数组是否是从1到N的数字排列,你可以通过以下几种方法实现:
def is_num_sequence(arr):
arr.sort()
for i in range(len(arr)):
if arr[i] != i + 1:
return False
return True
def is_num_sequence(arr):
hash_dict = {}
for num in arr:
hash_dict[num] = 1
for i in range(1, len(arr)+1):
if i not in hash_dict:
return False
del hash_dict[i]
if len(hash_dict) == 0:
return True
else:
return False
def is_num_sequence(arr):
n = len(arr)
if n != len(set(arr)):
return False
for i in range(n):
if arr[i] <= 0 or arr[i] > n:
return False
return True
以上三种方法可以实现数组从1到N的数字排列的检查,根据具体情况选择合适的方法即可。