华为OD机试 -找出符合要求的字符串子串(Java) | 机试题+算法思路+考点+代码解析 【2023】
迪丽瓦拉
2024-06-03 11:26:50
0

找出符合要求的字符串子串

题目

给定两个字符串,从字符串2中找出字符串1中的所有字符,去重并按照ASCII值从小到大排序

输入字符串1:长度不超过1024

输入字符串2:长度不超过1000000

字符范围满足ASCII编码要求,按照ASCII的值由小到大排序

输入描述:

bach
bbaaccedfg

输出描述:

abc

示例1

输入

fach
bbaaccedfg

输出

acf

说明

备注:

输入字符串1 为给定字符串bach,输入字符串2 bbaaccedfg

从字符串2中找出字符串1的字符,去除重复的字符,并且按照ASCII值从小到大排序,得到输出的结果为abc。

字符串1中的字符h在字符串2中找不到不输出。

解题思路

  1. 定义一个 solve 方法,传入两个参数:findStr 和 sourceStr。
  2. 创建一个 resultList 集合,用于存储符合条件的字符。
  3. 循环遍历 findStr 字符串中的每个字符,判断它是否在 sourceStr 中出现过。如果出现过,则将其加入到 resultList 集合中。
  4. 对 resultList 集合进行排序,按照字典序从小到大排序。<

相关内容