Java/387. First Unique Character in a String 字符串中第一个唯一字符

90 篇文章 0 订阅
20 篇文章 0 订阅

题目


 

 

 

代码部分一(10ms 95.56%)

class Solution {
    public int firstUniqChar(String s) {
        char[] ch = s.toCharArray();
        int[] map = new int[256];
        int res = -1;
        
        int n = ch.length;
        for(int i = 0; i < n; i++){
            map[ch[i]]++;
        }
        for(int i = 0; i < n; i++){
            if(map[ch[i]] == 1){
                res = i;
                break;
            }
        }
        return res;
       
    }
}

 

1.将字符串转换为字符数组
2.创建一个整形数组来存放各个字母出现的次数(预设结果为-1)
3.按字符在字符串的顺序,来计算各个字符的次数
4.按字符在字符串的顺序,找到第一个字符出现个数为1的字符
5.返回结果坐标

 

 

代码部分二(10ms 95.30%)

class Solution {
    public int firstUniqChar(String s) {
        int res = -1;
        for(char ch = 'a'; ch <= 'z'; ch++){
            int i = s.indexOf(ch);
            if(i != -1 && i == s.lastIndexOf(ch)){
                res = res == -1 ? i : Math.min(res, i);
            }
        }
        
        return res;
    }
}

 

1.预设结果为-1
2.for循环遍历所有小写英字母
3.每次判断获取当前小写英文字母第一次出现的位置,字符串存在该字母且,第一次出现于最后一次出现的位置一样(只出现一次)时
4.若字母为第一次出现,比较结果集存放的字母位置与当前字母的位置哪个靠前
5.返回结果集

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 好的,您可以使用Java编写以下代码来查找字符串第一个字符: ```java public class Main { public static void main(String[] args) { String str = "Hello World"; char firstChar = str.charAt(0); System.out.println("第一个字符是:" + firstChar); } } ``` 在这个例子,我们定义了一个字符串 `str`,然后使用 `charAt()` 方法来获取字符串第一个字符。最后,我们将结果打印到控制台上。 注意,Java 字符串是从索引 0 开始的,因此字符串第一个字符的索引为 0。 ### 回答2: 在Java查找字符串第一个字符可以使用charAt()方法。这个方法位于String,用于返回指定索引位置的字符。 具体的步骤如下: 1. 首先,定义一个字符串变量来存储需要查找的字符串。 2. 然后,使用charAt()方法来获取字符串第一个字符。 例如,如果字符串变量名为str,可以使用str.charAt(0)来获取第一个字符。 注意,索引从0开始,因此第一个字符的索引为0。 3. 最后,将通过charAt()方法获取到的第一个字符进行处理、打印或存储,实现需要的功能。 例如,假设有一个字符串变量str存储着"Hello",我们想要找到并打印出其第一个字符。可以按照上述步骤进行操作,具体代码如下: ``` String str = "Hello"; char firstChar = str.charAt(0); System.out.println("字符串第一个字符是:" + firstChar); ``` 运行以上代码,输出结果为"字符串第一个字符是:H",表示成功获取并打印出了字符串第一个字符"H"。 通过使用charAt()方法,我们可以轻松地在Java查找字符串第一个字符,并进行后续的操作。 ### 回答3: 在Java,我们可以使用String类提供的方法来查找字符串第一个字符。其,最常用的方法是使用charAt()方法。该方法接收一个参数,即所要查找的字符字符串的索引位置。 例如,我们有一个字符串str = "Hello World!",我们想要找到该字符串第一个字符。我们可以使用以下代码来实现: ```java String str = "Hello World!"; char firstChar = str.charAt(0); System.out.println("字符串第一个字符是:" + firstChar); ``` 在这个例子,我们使用charAt(0)方法来获取字符串str索引位置为0的字符,即第一个字符。然后,我们将获取到的字符存储在变量firstChar,并通过打印语句输出结果。 另外,我们还可以使用substring()方法来获取字符串的子串,从而间接获得字符串第一个字符。该方法接收两个参数,分别表示子串的起始索引和结束索引。当起始索引和结束索引相同时,返回的就是字符串的一个字符。 以下是使用substring()方法获取字符串第一个字符的示例代码: ```java String str = "Hello World!"; String firstChar = str.substring(0, 1); System.out.println("字符串第一个字符是:" + firstChar); ``` 在这个例子,我们使用str.substring(0, 1)方法来获取字符串str索引位置为0的字符,即第一个字符。然后,我们将获取到的字符存储在变量firstChar,并通过打印语句输出结果。 以上就是两种常用的方法来查找字符串第一个字符的方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值