สมมติว่าเรามีรายการตัวเลขที่เรียกว่า nums เราต้องหาความแตกต่างที่ใหญ่ที่สุดของตัวเลขสองตัวติดต่อกันในเวอร์ชันที่จัดเรียงของ nums
ดังนั้น หากอินพุตเป็น [5, 2, 3, 9, 10, 11] ผลลัพธ์จะเป็น 4 เนื่องจากช่องว่างที่ใหญ่ที่สุดระหว่าง 5 และ 9 คือ 4
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
- n :=เรียงลำดับรายการ nums
- ans :=รายการใหม่
- สำหรับฉันในช่วง 0 ถึงขนาด n -2 ทำ
- ใส่ n[i+1]-n[i] ต่อท้ายคำตอบ
- ผลตอบแทนสูงสุดของ ans
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
ตัวอย่าง
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