蛇形字符串输出

import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String s = scanner.next();
        Map mA = new HashMap<>(); // 存储大写字母
        Map ma = new HashMap<>(); // 存储小写字母

        for (char ss : s.toCharArray()) {
if (ss >= 'A' && ss <= 'Z') {
                mA.put(ss, mA.getOrDefault(ss, 0) + 1);
            }
if (ss >= 'a' && ss <= 'z') {
                ma.put(ss, ma.getOrDefault(ss, 0) + 1);
            }
        }

        for (Map.Entry entry : mA.entrySet()) {
            char key = entry.getKey();
            int value = entry.getValue();

           
    }
}
全部评论
if (ma.containsKey((char) (key + 32))) { continue; } else { mA.remove(key); } } if (mA.isEmpty()) { System.out.println("Not Found"); return; } StringBuilder tmp = new StringBuilder(); Map.Entry<Character, Integer> pre = null; Map.Entry<Character, Integer> cur = null;
点赞 回复
分享
发布于 03-28 10:26 广东
while (!mA.isEmpty()) { pre = mA.entrySet().iterator().next(); cur = mA.entrySet().iterator().next(); if (cur.getValue() == 0) { mA.remove(cur.getKey()); continue; } tmp.append(cur.getKey()).append((char) (cur.getKey() + 32)); cur.setValue(cur.getValue() - 1); pre = cur; while (cur != null &amp;&amp; cur.getValue() > 0 &amp;&amp; cur.getKey() == pre.getKey() + 1) { tmp.append(cur.getKey()).append((char) (cur.getKey() + 32)); cur.setValue(cur.getValue() - 1); pre = cur; cur = mA.higherEntry(cur.getKey()); } System.out.println(tmp.toString()); tmp.setLength(0); }
点赞 回复
分享
发布于 03-28 10:26 广东
滴滴
校招火热招聘中
官网直投

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务