Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

파이썬에서 가장 큰 공백

<시간/>

nums라는 숫자 목록이 있다고 가정하고 nums의 정렬된 버전에서 두 개의 연속된 숫자 중 가장 큰 차이를 찾아야 합니다.

따라서 입력이 [5, 2, 3, 9, 10, 11]과 같으면 5와 9 사이의 가장 큰 간격이 4이므로 출력은 4가 됩니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • n :=정렬된 목록 번호
  • ans :=새 목록
  • 0에서 n -2 크기의 범위에 있는 i에 대해
    • ns 끝에 n[i+1]-n[i] 삽입
  • 최대값 반환

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

예시

class Solution:
   def solve(self, nums):
      n = sorted(nums)
      ans = []
      for i in range(len(n)-1):
         ans.append(n[i+1]-n[i])
      return max(ans)
ob = Solution()
nums = [5, 2, 3, 9, 10, 11]
print(ob.solve(nums))

입력

[5, 2, 3, 9, 10, 11]

출력

4