zoukankan      html  css  js  c++  java
  • Leetcode 283. Move Zeroes

    283. Move Zeroes

    • Total Accepted: 98144
    • Total Submissions: 216474
    • Difficulty: Easy

    Given an array nums, write a function to move all 0's to the end of it while maintaining the relative order of the non-zero elements.

    For example, given nums = [0, 1, 0, 3, 12], after calling your function, nums should be [1, 3, 12, 0, 0].

    思路:遇到等于0的数,直接替换或者删除。

    代码:

    写法一:16 ms

     1 class Solution {
     2 public:
     3     void moveZeroes(vector<int>& nums) {
     4         int i,size=nums.size(),begin=0;
     5         for(i=0;i<size;i++){
     6             if(nums[i]) nums[begin++]=nums[i];
     7         }
     8         for(;begin<size;begin++){
     9             nums[begin]=0;
    10         }
    11     }
    12 };

    写法二:20 ms

     1 class Solution {
     2 public:
     3     void moveZeroes(vector<int>& nums) {
     4         int i,size=nums.size(),count=0;
     5         for(i=0;i<size;i++){
     6             if(nums[i]==0) count++;
     7             else{
     8                 nums[i-count]=nums[i];
     9             }
    10         }
    11         i=i-count;
    12         for(;i<size;i++){
    13             nums[i]=0;
    14         }
    15     }
    16 };

    写法三:28 ms

     1 class Solution {
     2 public:
     3     void moveZeroes(vector<int>& nums) {
     4         int i,size=nums.size();
     5         for(i=0;i<nums.size();){
     6             if(nums[i]==0) nums.erase(nums.begin()+i);
     7             else{
     8                 i++;
     9             }
    10         }
    11         for(;i<size;i++){
    12             nums.push_back(0);
    13         }
    14     }
    15 };
  • 相关阅读:
    聊一聊Flutter的setState()
    Flutter + Android 混合开发
    Flutter防止布局溢出
    Flutter获取远程数据 刷新UI界面
    Flutter日常笔记
    POJ 3299 Humidex
    POJ 1207 The 3n + 1 problem
    POJ 1005 I Think I Need a Houseboat
    POJ 1004 Financial Management
    POJ1012
  • 原文地址:https://www.cnblogs.com/Deribs4/p/5679315.html
Copyright © 2011-2022 走看看