码迷,mamicode.com
首页 > 其他好文 > 详细

LeetCode题解之Missing Number

时间:2018-07-10 11:17:33      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:代码   数组   return   相等   描述   src   int   ber   ima   

1、题目描述

技术分享图片

2、题目分析

将 [ 0 , n ]之间的整数放到 n 个元素的数组中去,必然缺失一个元素。在一次遍历中,将元素n[i] 放到 n[ n[i] ] ,位置。最后检查元素值和下标不相等的情况。

3、代码

 1 int missingNumber(vector<int>& nums) {
 2         if( nums.size() == 0 ) return 0;
 3         
 4         for( int i= 0 ; i < nums.size() ; i++ )
 5         {
 6             if( nums[i]  != i && nums[i] < nums.size() ){
 7                 swap( nums[i] , nums[ nums[i] ] );
 8                 i--;
 9             }   
10         } 
11         for( int i = 0; i < nums.size() ; i++ )
12         {
13             if( nums[i]  != i)
14                 return i;
15         }
16         
17         return nums.size() ;
18     }

 

LeetCode题解之Missing Number

标签:代码   数组   return   相等   描述   src   int   ber   ima   

原文地址:https://www.cnblogs.com/wangxiaoyong/p/9287225.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!