栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

leetcode 第291场周赛

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

leetcode 第291场周赛

leetcode 第 291 场周赛

网址链接


文章目录
    • leetcode 第 291 场周赛
      • 题目列表
        • 移除指定数字得到的最大结果 3
        • 必须拿起的最小连续卡牌数 4
        • 含最多 K 个可整除元素的子数组 5
        • 字符串的总引力


题目列表
  • 移除指定数字得到的最大结果 3

第一种 纯暴力,加入集合排序

class Solution {
   public String removeDigit(String number, char digit) {
       List list = new ArrayList<>();
       for(int i = 0; i < number.length(); i++){
           if(number.charAt(i) == digit){
               list.add(number.substring(0,i) + number.substring(i + 1,number.length())); // 去掉一样的字符
           }
       }
       
       Collections.sort(list);  //还能这样排序呀!
       return list.get(list.size() -1);
   }
}

第二种 贪心
从前往后遍历,如果找到了数字的下标,把他放进集合中,如果数字比下一个字符比他大,那直接退出循环,这就是我们要找的数字下标。
集合中的最后一个数字就是应该删除的目标字符的下标。

class Solution {
    public String removeDigit(String number, char digit) {

        List list = new ArrayList<>();

        char[] c = number.toCharArray();

        int i = 0;

        for(i = 0; i < c.length; i++){
            if(c[i] == digit){
                list.add(i);
                if(i + 1 < c.length && c[i + 1] > c[i]){
                    break;
                }
            }

        }
        
        int x = list.get(list.size() - 1);
        return (number.substring(0, x) + number.substring(x + 1, c.length));
        

    }
}
  • 必须拿起的最小连续卡牌数 4

遍历卡牌,将卡牌和下标存入Map集合,遍历过程中,判断卡牌是否已经存在在Map集合中,如果存在更新answer。

class Solution {
    public int minimumCardPickup(int[] cards) {
        Map hashmap = new HashMap<>();
        
        int answer = Integer.MAX_VALUE;
        for(int i = 0; i < cards.length; i++){
            if(hashmap.containsKey(cards[i])){
                answer = Math.min(answer, i - hashmap.get(cards[i]));
            }
            hashmap.put(cards[i], i);
        }
        
        
        if(answer == Integer.MAX_VALUE){
            return -1;    
        }
        
        return answer + 1;
        
    }
}
  • 含最多 K 个可整除元素的子数组 5
  • 字符串的总引力

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/859527.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号