zoukankan      html  css  js  c++  java
  • 1112. 寻找数据错误

    1112. 寻找数据错误

    中文English

    集合S中原本包含数字1n。但不幸的是,由于数据错误集合中的一个数变成了集合中的另一个数,这导致集合中有两个重复的数,并且集合中缺失了1n的某个数。

    给定数组nums,表示发生错误后的数组,以数组的形式返回重复的数值和缺失的数值。

    样例

    样例 1:

    输入: nums = [1,2,2,4]
    输出: [2,3]
    解释:
    2是重复的数,3是缺失的数。
    

    样例 2:

    输入: nums = [1,3,3,4]
    输出: [3,2]
    解释:
    3是重复的数,2是缺失的数。
    

    注意事项

    1.数组的大小范围为[2, 10000]。
    2.数组元素是无序的。

     
     
    输入测试数据 (每行一个参数)如何理解测试数据?
    class Solution:
        """
        @param nums: an array
        @return: the number occurs twice and the number that is missing
        """
        '''
        大致思路:
        1.初始化result = [],dic = {},格式{1:count,2:count...},每次循环都加到dic里面来,如果出现值存在dic里面的话,说明是第二次输入,重复的数值
        2.如果是没有出现的话,则为没有出现的数值。
        '''
        def  findErrorNums(self,nums):
            dic,result= {},[]
    
            ##取出重复的数值
            for i in nums:
                if i in dic:
                    result.append(i)
                dic[i] = 1
            ##取出空的数值
            for j in range(1,len(nums)+1):
                if j not in dic:
                    result.append(j)
            return result
  • 相关阅读:
    程序开发
    主方法
    日志
    node.js
    二维互换
    前台打断点
    具体的后台断点快捷键
    Jenkins
    断点
    循环
  • 原文地址:https://www.cnblogs.com/yunxintryyoubest/p/12684505.html
Copyright © 2011-2022 走看看