美文网首页
2,1456. 定长子串中元音的最大数目

2,1456. 定长子串中元音的最大数目

作者: 滔滔逐浪 | 来源:发表于2022-08-21 12:17 被阅读0次

    难度中等52 收藏 分享 切换为英文 接收动态 反馈

    给你字符串 s 和整数 k

    请返回字符串 s 中长度为 k 的单个子字符串中可能包含的最大元音字母数。

    英文中的 **元音字母 **为(a, e, i, o, u)。

    示例 1:

    输入:**s = "abciiidef", k = 3
    输出:3
    解释:子字符串 "iii" 包含 3 个元音字母。
    </pre>

    示例 2:

    输入:**s = "aeiou", k = 2
    输出:2
    解释:任意长度为 2 的子字符串都包含 2 个元音字母。
    </pre>

    示例 3:
    输入:**s = "leetcode", k = 3
    输出:2
    解释:"lee"、"eet" 和 "ode" 都包含 2 个元音字母。
    </pre>

    示例 4:

    输入:**s = "rhythms", k = 4
    输出:0
    解释:字符串 s 中不含任何元音字母。
    </pre>

    示例 5:

    输入:*s = "tryhard", k = 4
    输出:1
    </pre>

    提示:

    • 1 <= s.length <= 10^5
    • s 由小写英文字母组成
    • 1 <= k <= s.lengt
    package com.taotao.letcode.test;
    
    import java.util.List;
    import java.util.stream.Collectors;
    import java.util.stream.Stream;
    
    /**
     * @Author: wangjin
     * @CreateTime: 2022-08-21  12:19
     * 给你字符串 s 和整数 k 。
     * <p>
     * 请返回字符串 s 中长度为 k 的单个子字符串中可能包含的最大元音字母数。
     * <p>
     * 英文中的 元音字母 为(a, e, i, o, u)。
     * <p>
     *  
     * <p>
     * 示例 1:
     * <p>
     * 输入:s = "abciiidef", k = 3
     * 输出:3
     * 解释:子字符串 "iii" 包含 3 个元音字母。
     * <p>
     * 来源:力扣(LeetCode)
     * 链接:https://leetcode.cn/problems/maximum-number-of-vowels-in-a-substring-of-given-length
     * 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
     */
    public class NumberOfVowels {
        public static void main(String[] args) {
            String s = "abciiidef";
            String letter ="aeiou";
            int k = 3;
             int max=0;
            for (int i=0;i<s.length();i++){
                if(i+3 <=s.length()){
                    int j=0;
                    //获取截取的数据
                    String interceptedData=s.substring(i,i+3);
    
                    List<String> nameList= Stream.iterate(0, n->++n).limit(interceptedData.length()).map(n->""+interceptedData.charAt(n)).collect(Collectors.toList());
                    for(String string:nameList){
                        //判断是否包含原因字母
                    if(letter.contains(string)){
                        j++;
                    }
                    if(max<j){
                        max=j;
                    }
                       // System.out.println("字符串:"+interceptedData+",长度: "+max);
                    }
                }
            }
            System.out.println("最大长度是:"+max);
        }
    }
    
    
    

    相关文章

      网友评论

          本文标题:2,1456. 定长子串中元音的最大数目

          本文链接:https://www.haomeiwen.com/subject/jmevgrtx.html