Python程式:查詢列表中第k個缺失數字
假設我們有一個名為nums的有序唯一數字列表和一個整數k,我們需要找到給定列表的第一個元素中第k個缺失的數字。
例如,如果輸入是nums = [5,6,8,10,11],k = 1,則輸出將是9,因為9是第二個(索引1)缺失的數字。
為了解決這個問題,我們將遵循以下步驟:
對於i從1到nums的大小,執行:
diff := nums[i] - nums[i - 1] - 1
如果k >= diff,則:
k := k - diff
否則:
返回nums[i - 1] + k + 1
返回nums[-1] + k + 1
讓我們看看下面的實現來更好地理解:
示例
class Solution: def solve(self, nums, k): for i in range(1, len(nums)): diff = nums[i] - nums[i - 1] - 1 if k >= diff: k -= diff else: return nums[i - 1] + k + 1 return nums[-1] + k + 1 ob = Solution() nums = [5,6,8,10,11] k = 1 print(ob.solve(nums, k))
輸入
[5,6,8,10,11], 1
輸出
9
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP