zoukankan      html  css  js  c++  java
  • LeetCode题解之Find All Duplicates in an Array

    1、题目描述

    2、问题分析

    将数组中的元素 A[i] 放到 A[ A[i] - 1] 的位置。然后遍历一边数组,如果不满足 A[i] == i+1,则将A[i]添加到 结果中。

    3、代码

     1 vector<int> findDuplicates(vector<int>& nums) {
     2         vector<int> result ;
     3         for( int i = 0; i < nums.size() ; ++i ){
     4             if( nums[i] != nums[ nums[i] - 1 ]){
     5                 std::swap( nums[i] , nums[ nums[i] - 1]);
     6                 --i;
     7             }
     8         }
     9         for( int i = 0; i < nums.size(); i++ ){
    10             if( nums[i] != i+1 ){
    11                 result.push_back( nums[i] );
    12             }
    13             
    14         }
    15         return result ;
    16         
    17     }
    pp
  • 相关阅读:
    Zabbix 3.2.1 安装 Graphtree3.0.4 或 Graphtree3.2.x
    jquery-1
    AngularJS (1)
    css-2 (Text Font)
    css
    Java经验
    js经验
    mysql经验
    MySQL 函数
    jquery 效果
  • 原文地址:https://www.cnblogs.com/wangxiaoyong/p/9310856.html
Copyright © 2011-2022 走看看