面試題 17.04. 消失的數字
方法1:
使用排序的方法進行對比.如果迴圈到這個數字,不等於排序後的數字.那麼就是缺失.但也有一種情況就是.缺失的是最後一種情況.第一次就沒考慮到這個.給整報錯了
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
@Time : 2020/10/30 23:38
@Site :
@File : 面試題 17.04. 消失的數字.py
@Software: PyCharm
"""
"""
陣列nums包含從0到n的所有整數,但其中缺了一個。請編寫程式碼找出那個缺失的整數。你有辦法在O(n)時間內完成嗎?
注意:本題相對書上原題稍作改動
示例 1:
輸入:[3,0,1]
輸出:2
示例 2:
輸入:[9,6,4,2,3,5,7,0,1]
輸出:8
"""
'''
考慮到都是不一樣的數.所以感覺可以使用排好序的
'''
class Solution:
def missingNumber(self, nums: list) -> int:
nums_sort = sorted(nums)
for i in range(len(nums_sort)):
if nums_sort[i] != i:
return i
return nums_sort[-1]+1
A=Solution()
print(A.missingNumber([9,6,4,2,3,5,7,0,1]))
方法2 .使用減法
看了下.題解.居然有直接相減的辦法
但感覺直接使用內建函式.就沒有意思了.自己實現了.但似乎效果並不好…
class Solution:
def missingNumber(self, nums: list) -> int:
sums = (len(nums) + 1) * len(nums) / 2
for i in range(len(nums)):
sums -= nums[i]
return int(sums)
相關文章
- 消失的數字;及格點數目分析
- 重排陣列;及消失的數字分析陣列
- 微軟面試題之數字謎題 (轉)微軟面試題
- 448. 找到所有陣列中消失的數字陣列
- 【zz】面試題之尋找丟失的數字面試題
- 淦448. 找到所有陣列中消失的數字陣列
- 百度/數字馬力面試題分享面試題
- 力扣448. 找到所有陣列中消失的數字力扣陣列
- LeetCode-448-找到所有陣列中消失的數字LeetCode陣列
- js面試題-找出字串中的數字,並替換為*JS面試題字串
- Facebook 面試題 | 將數字轉換為十六進位制面試題
- 資料結構和演算法面試題系列—數字題總結資料結構演算法面試題
- zt坑人無數的Redis面試題Redis面試題
- 有關卡特蘭數的面試題面試題
- 面試題:布林變數面試題變數
- 面試必刷:最有用的Mysql面試題,面試了無數公司總結的MySql面試題
- 劍指offer面試題11 數值的整數次方面試題
- 每日一題:五 特別的數字每日一題
- 歷屆試題 數字遊戲(數學)遊戲
- 有趣的CSS題目(7):消失的邊界線問題CSS
- JAVA面試題 淺析Java中的static關鍵字Java面試題
- R - 讓消失的資料消失
- [程式猿面試題精選100題]10.排序陣列中和為給定值的兩個數字面試題排序陣列
- 面試題-JavaScript交換兩個變數的方法面試題JavaScript變數
- 別人家的面試題:統計“1”的個數面試題
- 填數字遊戲解題機遊戲
- Leetcode 刷題 ------1365.有多少小於當前數字的數字LeetCode
- 找到陣列中出現特定次數數字的問題陣列
- 題解1787:小O的數字 (Java描述)Java
- 劍指offer面試題11:旋轉陣列的最小數字(Java版已在牛客網AC)面試題陣列Java
- 梯度消失問題自我記錄梯度
- java關鍵字列表,Java開發面試題Java面試題
- 面試:Java 實現查詢旋轉陣列的最小數字面試Java陣列
- 面試題解:輸入一個數A,找到大於A的一個最小數B,且B中不存在連續相等的兩個數字面試題
- 缺失的數字;及找數字分析
- [題解] 條件變數實現數字的交替輸出變數
- [每日一題] 第四題:圓圈中最後剩下的數字每日一題
- C#按字串中的數字排序問題C#字串排序