找最大字母

1、找最大字母

小A是某公司的web应用开发人员,最近他在研究这样一个问题。当我们输入一段英语字符串时,可不可以判断出在这段字符串中哪个字母是其中最大的那个呢?请你帮助小A完成这样一个问题,如果判断出哪个字母是最大的就在其后面进行标注(max)

输入描述

输入一行字符串(不超过100个字母),字符串可由大小写组成。

 

输出描述

输出一行字符串,输出的结果是插入字符串“(max)”后的结果,如果存在多个最大的字母,就在每一个最大字母后面都插入"(max)"。

样例输入

fhzgtef

 

样例输出

fhz(max)gtef

2、 代码

import java.io.*;
import java.util.*;

/*
 * To execute Java, please define "static void main" on a class
 *
 * If you define many classes, but you must have a class named Main and a public property.
 * The Main class should be the only public class.
 * The Main class must contain a static method (function) named "main" 
 * Do not add any package, like "package main"
 *
 * The TestCase is shown below
 * Input : 1 2
 * Output : 3
 */

class Main {
    public static void main(String[] args) {
        System.out.println(args[0]);
        System.out.println(maxChar(args[0]));
    }
    
    public static String maxChar(String s){
        if(s==null || s.length()==0){
            return null;
        }
        char[] c= s.toCharArray();
        int maxIndex=0;
        int maxGap=0;
        for(int i=0;i<s.length();i++){
            if(c[i]-'a'>=maxGap){
                maxIndex=i;
                maxGap=c[i]-'a';
            }
        }
        StringBuilder sb=new StringBuilder();
        for(int i=0;i<s.length();i++){
            if(c[i]==c[maxIndex]){
                sb.append(String.valueOf(c[i]));
                sb.append("(max)");
            }else{
                sb.append(String.valueOf(c[i]));
            }
        }
        return sb.toString();
    }
}

。。。

posted @ 2022-04-08 22:44  guoyu1  阅读(150)  评论(0编辑  收藏  举报