字符串字符匹配

实现代码:

java 复制代码
public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        
        String s = scanner.nextLine();
        String t = scanner.nextLine();
        
        boolean result = checkContainsOptimized(s, t);
        System.out.println(result);
        
        scanner.close();
    }
    
    public static boolean checkContainsOptimized(String s, String t) {
        // 创建布尔数组记录t中出现的字符(小写字母共26个)
        boolean[] charExists = new boolean[26];
        
        // 标记t中出现的所有字符
        for (int i = 0; i < t.length(); i++) {
            char c = t.charAt(i);
            charExists[c - 'a'] = true;
        }
        
        // 检查s中的每个字符是否都在t中出现过
        for (int i = 0; i < s.length(); i++) {
            char c = s.charAt(i);
            if (!charExists[c - 'a']) {
                return false;
            }
        }
        
        return true;
    }
相关推荐
五岳几秒前
DTS按业务场景批量迁移阿里云MySQL表实战(下):迁移管理平台设计与实现
java·应用·dts
zhougl99617 分钟前
Java 所有关键字及规范分类
java·开发语言
Python 老手22 分钟前
Python while 循环 极简核心讲解
java·python·算法
@Aurora.26 分钟前
优选算法【专题九:哈希表】
算法·哈希算法·散列表
java1234_小锋39 分钟前
Java高频面试题:MyISAM索引与InnoDB索引的区别?
java·开发语言
Mr_Xuhhh1 小时前
MySQL函数详解:日期、字符串、数学及其他常用函数
java·数据库·sql
爱看科技1 小时前
微美全息(NASDAQ:WIMI)研究拜占庭容错联邦学习算法,数据安全与隐私保护的双重保障
算法
qq_417129251 小时前
C++中的桥接模式变体
开发语言·c++·算法
YuTaoShao2 小时前
【LeetCode 每日一题】3010. 将数组分成最小总代价的子数组 I——(解法二)排序
算法·leetcode·排序算法
测试开发Kevin2 小时前
小tip:换行符CRLF 和 LF 的区别以及二者在实际项目中的影响
java·开发语言·python