曰韩免费_91久久精品国产亚洲_一区二区成人影院_九一视频在线免费观看_91国视频_亚洲成人中文在线

我想玩猜字谜 leetcode算法题每日一练- 猜字谜

雕龙文库 分享 时间: 收藏本文

我想玩猜字谜 leetcode算法题每日一练- 猜字谜

算法题每日一练- 猜字谜

题目

外国友人仿照中国字谜设计了一个英文版猜字谜小游戏,请你来猜猜看吧。

字谜的迷面 按字符串形式给出我想玩猜字谜,如果一个单词 word 符合下面两个条件,那么它就可以算作谜底:

例如我想玩猜字谜,如果字谜的谜面是 “”我想玩猜字谜,那么可以作为谜底的单词有 “”, “”, 和 “”;而 “”(不含字母 “a”)以及 “”(其中的 “s” 没有出现在谜面中)都不能作为谜底。

返回一个答案数组 ,数组中的每个元素 [i] 是在给出的单词列表 中可以作为字谜迷面 [i] 所对应的谜底的单词数目。

示例:

输入:words = ["aaaa","asas","able","ability","actt","actor","access"], puzzles = ["aboveyz","abrodyz","abslute","absoryz","actresz","gaswxyz"]输出:[1,1,3,2,4,0]解释:1 个单词可以作为 "aboveyz" 的谜底 : "aaaa" 1 个单词可以作为 "abrodyz" 的谜底 : "aaaa"3 个单词可以作为 "abslute" 的谜底 : "aaaa", "asas", "able"2 个单词可以作为 "absoryz" 的谜底 : "aaaa", "asas"4 个单词可以作为 "actresz" 的谜底 : "aaaa", "asas", "actt", "access"没有单词可以作为 "gaswxyz" 的谜底,因为列表中的单词都不含字母 'g'

提示:

分析

实现这题的思路其实很简单:

首先,根据题意得符合谜底的必要条件: 必须由谜面中的字符组成,即一个谜底word中的字符一定都来源于一个谜面。谜底必须包含谜面中的第一个字符。 明白了两个必要条件,所以思路就出来了,遍历所有谜面,将谜底逐个代入进去验证是否满足条件。 实现

public static List<Integer> findNumOfValidWords(String[] words, String[] puzzles) { List<Integer> result = new ArrayList<>(); int count; boolean flag = false; // 遍历谜面 for (String puzzle : puzzles) { count = 0; // 遍历数组 for (String word : words) { // 第一个条件,谜底必须包含谜面puzzle中的第一个字符 if (word.contains(Character.toString(puzzle.charAt(0)))) { for (int k = 0; k < word.length(); k++) { char c = word.charAt(k); // 第二个条件,谜底的字符全部来源于谜面的字符 if (!puzzle.contains(Character.toString(c))) { flag = false; break; } flag = true; } if (flag){ count++; } } } result.add(count); } return result; }

总结

时间复杂度为O(MNV),即谜底的长度谜面word的长度单个字符串的长度,空间复杂度为O(N),即对应谜底的结果集合。当然,本题是存在优化点的,就是使用的思想,减少一层遍历,读者可以查看官方题解-猜字谜

免责声明:本文系转载,版权归原作者所有;旨在传递信息,不代表本站的观点和立场和对其真实性负责。如需转载,请联系原作者。如果来源标注有误或侵犯了您的合法权益或者其他问题不想在本站发布,来信即删。

主站蜘蛛池模板: 热er99久久6国产精品免费 | 亚洲精品入口一区二区在线观看 | 欧美成人亚洲国产精品 | 蜜臀国产在线视频 | 亚洲一区二区三区四区 | 乱一色一一区二区三区 | 日日碰狠狠躁久久躁综合网 | 制服丝袜一区二区三区 | av免费网址在线观看 | 中文字幕欧美日韩久久 | 轻轻啪qqp.cc | 亚洲欧美成人一区二区三区 | 国产无套中出学生姝 | 中文字幕一级毛片视频 | 亚洲变态另类天堂av手机版 | 午夜免费影院 | 国产偷人妻精品一区二区在线 | 99这里只精品热在线获取 | 2022国内精品免费福利视频 | 在线 | 一区二区三区四区 | 国产亚洲精品观看91在线 | h视频在线免费 | 欧美无限看 | 中文字幕不卡一区 | 久久久免费 | 亚洲va中文字幕无码 | 日本一级毛片在线观看 | 久久综合色之久久综合 | 日本高清成本人视频一区 | 久久久久国产精品免费免费搜索 | 99在线观看视频免费精品9 | 亚洲精品欧美精品中文字幕 | 色老头一区二区三区 | 成人区人妻精品一熟女 | 狠狠色噜噜狠狠狠狠2021天天 | 国产成人精品日本亚洲语音2 | 亚洲国产欧美国产综合久久 | 精品久久久久久综合日本 | 在线一级黄色片 | 亚洲精品人成电影网 | 夜夜夜高潮夜夜爽夜夜爰爰 |