zoukankan      html  css  js  c++  java
  • 824. 山羊拉丁文『简单』

    题目来源于力扣(LeetCode

    一、题目

    824. 山羊拉丁文

    题目相关标签:字符串

    说明:

    • S 中仅包含大小写字母和空格。单词间有且仅有一个空格。
    • 1 <= S.length <= 150

    二、解题思路

    1. 对字符串 S 进行空格的分组,得到单词数组

    2. 遍历单词数组,对每一个单词都判断单词的首字母是否为元音字母(不区分大小写)

    三、代码实现

    public static String toGoatLatin(String S) {
        StringBuilder ans = new StringBuilder();
        // a 的个数初始为 1
        StringBuilder acount = new StringBuilder("a");
        String maStr = "ma";
        String[] strs = S.split(" ");
    
        for (int i = 0; i < strs.length; i++) {
            String str = strs[i];
            char c = str.charAt(0);
            // 对单词中的首位字符进行判断
            if (isvowel(c)) {
                ans.append(str);
            } else {
                // 非元音字母时,字符串的首位挪到末位后
                ans.append(str.substring(1));
                ans.append(c);
            }
            // 为字符串添加字符串 ma 和字符串索引 + 1 个长度的字符 a
            ans.append(maStr);
            ans.append(acount);
            // 当前字符串不是数组的最后一位时,才加空格分隔符
            if (i < strs.length - 1) {
                ans.append(" ");
            }
            // a 的个数每次加 1
            acount.append("a");
        }
        return ans.toString();
    }
    
    // 判断某字符是否元音字母
    public static boolean isvowel(char c) {
        return c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U'
            || c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u';
    }
    

    四、执行用时

    五、部分测试用例

    public static void main(String[] args) {
        String S = "I speak Goat Latin";  // output:"Imaa peaksmaaa oatGmaaaa atinLmaaaaa"
    
    //    String S = "The quick brown fox jumped over the lazy dog";  
        // output:"heTmaa uickqmaaa rownbmaaaa oxfmaaaaa umpedjmaaaaaa overmaaaaaaa hetmaaaaaaaa azylmaaaaaaaaa ogdmaaaaaaaaaa"
        String result = toGoatLatin(S);
        System.out.println(result);
    }
    
  • 相关阅读:
    华为交换机端口安全
    华为路由交换命令收集
    Java使用JodaTime处理时间
    Java遍历Map对象的四种方式
    zabbix-2.4.8-1添加MySQL状态监控
    zabbix-2.4.8-1添加tcp状态监控
    zabbix-2.4.8-1添加nginx状态监控
    我的第四个Python小程序
    我的第三个Python小程序
    我的第二个Python小程序
  • 原文地址:https://www.cnblogs.com/zhiyin1209/p/12976734.html
Copyright © 2011-2022 走看看