中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

LeetCode如何找出字符串中的第一個唯一字符

發布時間:2021-12-15 14:56:11 來源:億速云 閱讀:142 作者:小新 欄目:大數據

這篇文章給大家分享的是有關LeetCode如何找出字符串中的第一個唯一字符的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

1,問題簡述

給定一個字符串,找到它的第一個不重復的字符,并返回它的索引。

如果不存在,則返回 -1。

2,示例

示例:
s = "leetcode"返回 0
s = "loveleetcode"返回 2

提示:你可以假定該字符串只包含小寫字母。

3,題解思路

鍵值對集合LinkedHashMap的使用

4,題解程序


import java.util.HashMap;import java.util.LinkedHashMap;import java.util.Map;import java.util.Optional;
public class FirstUniquCharTest2 {    public static void main(String[] args) {        String s = "cc";        int firstUniqChar = firstUniqChar(s);        System.out.println("firstUniqChar = " + firstUniqChar);    }
   public static int firstUniqChar(String s) {        if (s == null || s.length() == 0) {            return -1;        }        char[] toCharArray = s.toCharArray();        HashMap<Character, Integer> hashMap = new LinkedHashMap<>(toCharArray.length);        for (char c : toCharArray) {            hashMap.put(c, hashMap.getOrDefault(c, 0) + 1);        }        Optional<Map.Entry<Character, Integer>> optionalEntry =                hashMap.entrySet().stream().filter(x -> x.getValue() == 1).findFirst();        if (!optionalEntry.isPresent()) {            return -1;        } else {            Character character = optionalEntry.get().getKey();            return s.indexOf(character);        }
   }}

5,題解程序圖片版

LeetCode如何找出字符串中的第一個唯一字符

感謝各位的閱讀!關于“LeetCode如何找出字符串中的第一個唯一字符”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

双鸭山市| 扎赉特旗| 察雅县| 余干县| 临武县| 红安县| 太保市| 贵德县| 滨海县| 沁阳市| 中超| 元谋县| 蒙阴县| 嘉黎县| 余江县| 洪雅县| 南安市| 丹寨县| 通渭县| 屏边| 杭锦旗| 安义县| 庆云县| 钟山县| 邻水| 遂溪县| 林州市| 屯昌县| 开远市| 桂平市| 鄄城县| 洪泽县| 社会| 乐业县| 东至县| 长海县| 临夏县| 溧阳市| 会理县| 河津市| 四川省|