leetcode-500. 键盘行
题目
解法
很简单,首先维护一个字符位置的映射关系,判断每个字符的每一位是否在一行
哈希表
class Solution { const LINE_CHARS = [ 'q' => 1, 'w' => 1, 'e' => 1, 'r' => 1, 't' => 1, 'y' => 1, 'u' => 1, 'i' => 1, 'o' => 1, 'p' => 1, 'a' => 2, 's' => 2, 'd' => 2, 'f' => 2, 'g' => 2, 'h' => 2, 'j' => 2, 'k' => 2, 'l' => 2, 'z' => 3, 'x' => 3, 'c' => 3, 'v' => 3, 'b' => 3, 'n' => 3, 'm' => 3, ]; /** * @param String[] $words * @return String[] */ function findWords($words) { $ret = []; foreach ($words as $word) { $lastLine = null; for ($i = 0; $i < strlen($word); $i++) { $curChar = strtolower($word[$i]); $curCharLine = self::LINE_CHARS[$curChar]; if (!is_null($lastLine) && $curCharLine != $lastLine) { continue 2; } $lastLine = $curCharLine; } $ret[] = $word; } return $ret; } }
参考
本文来自博客园,作者:吴丹阳-V,转载请注明原文链接:https://www.cnblogs.com/wudanyang/p/15758596.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)