刷题专栏(二十七): 找不同

简介: 刷题专栏(二十七): 找不同

前言

刷题专栏到目前已经是第二十七篇了,欢迎大家来关注我的刷题专栏,一起来刷题。

今天的这道题,《找不同》,是关于字符串的一道题。

如果你要更熟练的使用字符串的诸多特性。

那就一起来看一下这道题的解法吧。image.png

算法题:找不同

根据题目的描述来看,是要在两个字符串中找出不一样的字母。

且两个字符串只会相差一个字符,都是只包含小写字母。

通过这两个重要特征,我们解题的思路就很简单了。

思路有很多种,比如,我们可以通过Set集合来存储,然后一一排除,找到最后就可以找到不同之处。

再比如,char类型的字母是固定的值,我们可以将所有的字母转为整数数值保存,最后进行相减后转换成char值即可达到预期结果。

接下来我们就一起来看一下相关的代码编写吧。

代码展示

本次执行的代码如下,大家可以自行参考一下。

采用的就是关于char字母的整型数字总和相减的方式来处理的。

public class Solution {
    public static void main(String[] args) {
        Solution solution = new Solution();
        System.out.println(solution.findTheDifference("a", "ac"));
    }
    public char findTheDifference(String s, String t) {
        int a = 0, b = 0;
        for (int i = 0; i < s.length(); ++i) {
            a += s.charAt(i);
        }
        for (int i = 0; i < t.length(); ++i) {
            b += t.charAt(i);
        }
        return (char) (b - a);
    }
}

代码执行结果

本次代码执行的效率一般,内存消耗严重,执行用时却没有提升上来。看来这个方法有待提高。

image.png

总结

本题主要就是考察关于char类型字母的使用,和对字符串获取的熟练掌握。大家学会了吗,有问题评论区见。

目录
打赏
0
1
2
0
2
分享
相关文章
这些年背过的面试题——LeetCode
本文是技术人面试系列LeetCode篇,一文带你详细了解,欢迎收藏!
|
6月前
|
【C初阶——基础刷题】刷题8
【C初阶——基础刷题】刷题8
牛客网刷题笔记小节(二)
牛客网刷题笔记小节(二)
刷题专栏(十九):移动零
刷题专栏(十九):移动零
70 1
|
9月前
|
刷题专栏(二十五):有效的完全平方数
刷题专栏(二十五):有效的完全平方数
209 2
|
9月前
|
刷题专栏(二十三):4的幂
刷题专栏(二十三):4的幂
110 0
|
9月前
|
刷题专栏(二十二):3 的幂
刷题专栏(二十二):3 的幂
139 0
|
9月前
|
刷题专栏(十五):各位相加
刷题专栏(十五):各位相加
67 0
|
9月前
|
刷题专栏(十六):丑数
刷题专栏(十六):丑数
72 0