题解 | #找出字符串中第一个只出现一次的字符#

找出字符串中第一个只出现一次的字符

http://www.nowcoder.com/practice/e896d0f82f1246a3aa7b232ce38029d4

import java.util.*;
public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        char[] chrs = scan.nextLine().toCharArray();
        Queue<Character> queue = new LinkedList<>();
        int[] nums = new int[26];
        for (char chr : chrs) {
            nums[chr - 'a']++;
            if (nums[chr - 'a'] == 1) {
                queue.add(chr);
            }
            if (nums[chr - 'a'] > 1 && queue.contains(chr)) {
                queue.remove(chr);
            }
        }
        if (queue.isEmpty()) {
            System.out.println(-1);
        } else {
            char chr = queue.poll();
            System.out.println(chr);
        }
    }
}
全部评论
该牛油正在参与牛客写题解薅羊毛的活动,牛币,周边,京东卡超多奖品放送,活动进入倒计时!快来捡漏啦https://www.nowcoder.com/discuss/888949?source_id=profile_create_nctrack&channel=-1
点赞
送花
回复
分享
发布于 2022-04-20 16:58
强行被你加了条件:输入只能是小写字母
点赞
送花
回复
分享
发布于 2023-02-05 23:02 广东
秋招专场
校招火热招聘中
官网直投

相关推荐

头像
05-14 12:29
安卓
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务