zoukankan      html  css  js  c++  java
  • 11/1

    Leetcode 80. Remove Duplicates from Sorted Array II

    这里其实也可以用类似于 Remove Duplicates from Sorted Array 中的解法三的模版,由于这里最多允许两次重复,那么当前的数字 num 只要跟上上个覆盖位置的数字 nusm[i-2] 比较,若 num 较大,则绝不会出现第三个重复数字(前提是数组是有序的),这样的话根本不需要管 nums[i-1] 是否重复,只要将重复个数控制在2个以内就可以了,参见代码如下:

     1 class Solution {
     2     public int removeDuplicates(int[] nums) {
     3         int i = 0;
     4         for( int num : nums){
     5             if( i < 2 || num > nums[i-2]){
     6                 nums[i++] = num;
     7             }
     8         }
     9         return i;
    10     }
    11 }

     299. Bulls and Cows

    在处理不是bulls的位置时,我们看如果secret当前位置数字的映射值小于0,则表示其在guess中出现过,cows自增1,然后映射值加1,如果guess当前位置的数字的映射值大于0,则表示其在secret中出现过,cows自增1,然后映射值减1,参见代码如下:

     1 class Solution {
     2     public String getHint(String secret, String guess) {
     3         int bulls =0;
     4         int cows = 0;
     5         int[] numbers = new int[10];
     6         for(int i = 0; i < secret.length(); i++){
     7             if(secret.charAt(i) == guess.charAt(i)) bulls++;
     8             else{
     9                 if(numbers[secret.charAt(i) - '0']++ < 0 ) cows++;
    10                 if(numbers[guess.charAt(i) - '0']-- > 0) cows++;
    11             }
    12         }
    13         return bulls + "A" + cows + "B";
    14     }
    15 }
  • 相关阅读:
    Linux终端复用——tmux
    python中的global和nonlocal
    Pytorch中的错误和bug
    vue之Mutations 理解
    js 对象的合并(3种方法)转载
    json 数组
    vue-cli 安装时 npm 报错 errno -4048
    vue-cli 安装步骤(转载)
    安卓输入框调起键盘后输入框自动上浮
    jquery on 事件嵌套 事件执行多次
  • 原文地址:https://www.cnblogs.com/Afei-1123/p/11779726.html
Copyright © 2011-2022 走看看