leetcode-500-Keyboard Row
来源:互联网 发布:意大利人的性格 知乎 编辑:程序博客网 时间:2024/05/30 04:27
问题
题目:[leetcode-500]
思路
简单题,没什么说的。注意isOnlyOneRow里面常量字符串可以写成static。这样不用反复开辟和销毁。增强生存期。小心一点,找的时候用小写。
代码
class Solution {public: vector<string> findWords(vector<string>& words) { std::vector<std::string> ret; int sz = words.size(); for( int i = 0; i < sz; ++i ){ if( isOnlyOneRow(words[i]) ) ret.push_back(words[i]); } return ret; }private: bool isOnlyOneRow(const std::string& s){ static const std::string keyBoardRow[] = { "qwertyuiop", "asdfghjkl", "zxcvbnm" }; int sz = s.size(); int rowNum = 0; for( int i = 0; i < sz; ++i ){ for( int k = 0; k < 3; ++k ){ if( std::find(keyBoardRow[k].begin(), keyBoardRow[k].end(), std::tolower(s[i])) != keyBoardRow[k].end() ){ if(!i) rowNum = k; else{ if( k != rowNum ) return false; } } } } return true; }};
0 0
- leetcode-500-Keyboard Row
- leetcode 500 keyboard row
- Leetcode #500 Keyboard Row
- LeetCode 500 Keyboard Row
- LeetCode 500: Keyboard Row
- 【LeetCode】500 Keyboard Row
- #leetcode#500 Keyboard Row
- LeetCode 500 Keyboard Row
- Leetcode 500 Keyboard Row
- LeetCode-500-Keyboard Row
- LeetCode.500 Keyboard Row
- leetcode 500 Keyboard Row C++
- leetcode 500 Keyboard Row Add to List
- Leetcode-500. Keyboard Row
- 【Leetcode】500. Keyboard Row
- 【LeetCode】500. Keyboard Row
- LeetCode 500. Keyboard Row
- LeetCode 500. Keyboard Row
- SSH实现两台Linux主机无需密码互相登录
- 在linux上安装mysql
- 为什么ReactJS不适合复杂交互的前端项目
- View体系之View的位置与事件
- OJ题目:悼念512汶川大地震遇难同胞
- leetcode-500-Keyboard Row
- 数据结构实验之二叉树七:叶子问题(二叉树+队列)
- 基于α-β剪枝算法的智能五子棋
- Java-基础 文件操作IO 在指定目录中创建文件
- ionicCSS07_选项卡
- 安卓连接pos小票机和钱箱
- 懒加载的一些问题
- 根据id复选框的选中
- 蓝桥杯 01背包 动态规划