zoukankan      html  css  js  c++  java
  • 移动零

    给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。

    示例:

    输入: [0,1,0,3,12]
    输出: [1,3,12,0,0]

    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/move-zeroes                 https://leetcode.com/problems/move-zeroes
     

    class Solution {
        public void moveZeroes(int[] nums) {
            //判断是否有零 
            //将nums[i]不等于零的元素移动到前面
            int j = 0 ;
            for (int i = 0 ; i< nums.length ; i++) {
               if (nums[i] != 0){
                 nums[j] = nums[i];
                  if(j != i ){
                    nums[i] = 0;
                  }
                 j++; //在循环内执行
               }          
            }   
        }
    }
    public void moveZeroes(int[] nums) {
            if(nums == null || nums.length <=1)
                return;
            int last = -1;
            for(int i=0; i<nums.length; i++){
                if(nums[i] != 0){
                    nums[++last] = nums[i];
                    if(i != last)
                        nums[i]=0; 
                }
            }
        } 
    class Solution {
        public void moveZeroes(int[] nums) {
            int pos = 0;
            for(int i = 0;i < nums.length;i++) {
                if(nums[i] != 0) {
                    if(i != pos) {
                        nums[pos] = nums[i];
                        nums[i] = 0;
                    }
                    pos++;
                }
            }
        }
    }
  • 相关阅读:
    day59_BOS项目_11
    day58_BOS项目_10
    shell 笔记
    docker + swarm 集群
    HDFS深入浅析
    FTP服务器常规操作
    linux shell 流程控制
    认识黑客常用的入侵方法
    Linux中常用的查看系统信息的命令
    解决Yum安装依赖问题
  • 原文地址:https://www.cnblogs.com/try-chi/p/11995704.html
Copyright © 2011-2022 走看看