[LeetCode] 500.Keyboard Row

LSTM模型 轨迹经纬度预测 原始时间序列数据如下所示,我们只取前两列纬度和经度作为输入数据 我们设定用前六个位置信息预测下一个位置,则两个样本的输入输出数据如下所示: 创建LSTM网络训练模型: import numpy as np from keras.layers.core import Dense, Activation, Dropout from keras.layers import LS... 阅读详情

[LeetCode] 500.Keyboard Row

  • 题目描述
  • 解题思路
  • 实验代码

题目描述

Given a List of words, return the words that can be typed using letters of alphabet on only one row’s of American keyboard like the image below.

这里写图片描述

Example:

Input: [“Hello”, “Alaska”, “Dad”, “Peace”]
Output: [“Alaska”, “Dad”]

Note:
1. You may use one character in the keyboard more than once.
2. You may assume the input string will only contain letters of alphabet.

解题思路

这道题是一道比较形象比较容易理解的题,题目的意思就是给你一个vector,里面有一些只由字母组成的字符串,如果某个字符串不是由键盘上同一行的字母组成的则删除它。最后返回得到的新的vector。
做法应该是有很多种的,我的方法看起来比较麻烦,但比较容易理解。就是将26个字母按其在键盘所在的行数分为三类,用一个temp数组来保存它所处行的信息。之后将每一个字符串拿出来考虑,在考虑是否在同一行时还要注意大小写的区分,按我的做法就必须分开两种情况来判断。记录下字符串中每一行字母的个数,只有一行个数不为0就满足条件,留下来,否则就用erase()函数删除。使用我的方法要注意边界的选择和a, b, c三个计数器的清零。

实验代码

class Solution {
public:
    vector<string> findWords(vector<string>& words) {
        int temp[26] = {2, 3, 3, 2, 1, 2, 2, 2, 1, 2, 2, 2, 3, 3, 1, 1, 1, 1, 2, 1, 1, 3, 1, 3, 1, 3};
        int a = 0, b = 0, c = 0;
        for (int i = 0; i < words.size(); i++) {
            string ss = words[i];
            int l = ss.length();
            for (int j = 0; j < l; j++) {
                if (ss[j] >= 65 && ss[j] <= 90) {
                    if (temp[ss[j]-'A'] == 1) a++;
                    else if (temp[ss[j]-'A'] == 2) b++;
                    else c++;
                } else {
                    if (temp[ss[j]-'a'] == 1) a++;
                    else if (temp[ss[j]-'a'] == 2) b++;
                    else c++;
                }
            }
            if ((a != 0 && b == 0 && c == 0) || (a == 0 && b != 0 && c == 0) || (a == 0 && b == 0 && c != 0)) {
                a = 0;
                b = 0;
                c = 0;
                continue;
            } else {
                words.erase(words.begin()+i);
                i--;
                a = 0;
                b = 0;
                c = 0;
            }
        }
        return words;
    }
};
冷源法测试噪声系数(Noise Figure)详细步骤 背景知识 电阻负载的功率谱密度 噪声等效模型 3 4 冷源法测试步骤 注意事项 阅读详情

相关推荐

Appsflyer S2S事件上报实战:从参数获取到避坑指南(附Firebase对比)

本文详细解析了Appsflyer S2S事件上报的实战技巧,包括核心参数获取、测试环境搭建、生产环境最佳实践以及高级场景处理。通过对比Firebase的事件上报机制,帮助开发者高效避坑并优化数据上报流程,提升应用分析与营销效果。

egg99的博客 885

[LeetCode]500. Keyboard Row

[LeetCode]500. Keyboard Row题目描述思路将每一行的字符存入map中,不同行对应不同值, 遍历比较,有不同的就结束该词,全相同则加入result中代码class Solution { public: vector<string> findWords(vector<string>& words) { unordered_map<char, int> k

Lcharon的博客 3559

个人信息保护合规审计人员(高级)能力考核试卷+面试模拟

《个人信息保护合规审计考试与面试指南》 摘要:本文提供个人信息保护合规审计考试及面试的全面指导。考试采用闭卷笔试形式,满分100分,合格线75分,时长120分钟,包含单选、多选、判断题及综合案例分析题。内容涵盖《个人信息保护法》核心条款、审计程序、风险评估等实务要点。面试环节采用情景模拟方式,重点考察应试者在压力下处理审计独立性、客户关系与监管要求的平衡能力,以及应对数据泄露等突发事件的处置流程。案例题聚焦大型互联网平台的数据收集、共享、跨境传输等高风险环节的合规审计,要求设计完整的审计方案框架。面试评分标

qq_41525079的博客 1144

LeetCode 500 Keyboard Row

LeetCode 500 Keyboard Row C代码版。

Raptor_2017的博客 596

Python-Opencv中的膨胀和腐蚀

Python-Opencv中的膨胀和腐蚀 腐蚀和膨胀是对白色部分(高亮部分)而言的,不是黑色部分。 膨胀就是图像中的高亮部分进行膨胀,“邻域扩张”,效果图拥有比原图更大的高亮区域。腐蚀就是原图中高亮部分被腐蚀,“邻域被蚕食”,效果图拥有比原图更小的高亮区域。 1.膨胀 膨胀过程是有一个结构元素或者模板去在原图像素比对,当比对过程中,中心像素位置的值根据其八邻域取或运算,或运算为1就取自己的中心值,...

qq_44262417的博客 1万+

整流桥选型参数,结构原理,工艺与注意问题总结

整流桥(Rectifier Bridge)是一种电子元件,它的主要作用是将交流电(AC)转换为直流电(DC)。这种转换在许多电子设备中都是必要的,因为大多数电子元件和电路都需要直流电源来工作。本文对整流桥的工作原理,结构特点,工艺流程,选型参数及设计注意事项进行总结。

fydar的博客 2185

【LeetCode】500. Keyboard Row

【链接】:keyboard-row 【描述】: Given a List of words, return the words that can be typed using letters of alphabet on only one row’s of American keyboard like the image below. American keyboardExample 1:

herongwei 的 BLOG 2720

通信原理 | 随机数仿真 | 均匀、正态、双高斯、瑞利、莱斯、对数正态、nakagami、Suzuki分布的随机数仿真(matlab)

信道建模在通信系统设计和分析中扮演着至关重要的角色。它指的是使用数学和物理模型来描述和模拟无线或有线通信路径中的信号传播特性。

若北辰 1988

【leetcode】500_Keyboard Row

problem 500.Keyboard Row 题意:判断给出的某个单词是否可以使用键盘上的某一行字母type得到; 注意大小写的转换; solution1: 使用set保存三行字符,查看每个字符所在的行数是否一致; class Solution { public: vector<string> findWords(vector<string>...

weixin_30872789的博客 213

SAP-ABAP:新手入门篇——从0到1写出你的第一个ABAP Hello World程序并完成调试运行

本文是ABAP开发入门指南,详细介绍如何创建并运行第一个"Hello World"程序。主要内容包括:通过SE38事务码进入ABAP编辑器;创建以Z/Y开头的程序并保存为本地对象;编写简单的WRITE输出语句;完成语法检查、激活和执行流程;以及初步体验调试功能。文章特别强调ABAP开发的规范要求,如程序命名规则、激活与保存的区别等,并提供了详细的步骤说明和常见问题提示,帮助零基础开发者快速上手ABAP编程。

baidu_35680696的博客 480

103.在 Vue 3 中使用 OpenLayers 控制图层来显示/隐藏地图

是一个强大的开源库,可以用于构建各种地理信息系统应用。在 Vue 3 中,我们可以结合。方法,可以直接控制某个图层是否可见,而不需要删除或重新创建图层。在开始之前,确保你已经搭建了 Vue 3 项目,并安装了。本文将详细介绍如何在 Vue 3 组合式 API (,并实现按钮控制地图的显示/隐藏功能。会导致 OSM 瓦片地图无法加载。方法控制地图图层的显示与隐藏。安装完成后,即可开始编写代码。在本教程中,我们介绍了如何在。来实现地图的显示/隐藏功能。来实现交互式地图,并通过。在 WebGIS 开发中,

小彭的博客 1561

LeetCode——500. Keyboard Row

LeetCode——500. Keyboard RowLeetCode500 Keyboard Row 题目描述 分析 C Python 题目描述Given a List of words, return the words that can be typed using letters of alphabet on only one row’s of American keyboard like

夏天的风 1167

【AUTOSAR-COM】-5.2-“Deadline Monitoring超时监控”-2-基于IPdu实现

目录 1 在CFG中配置Deadline Monitoring超时监控 1.1 参数说明 1.2 生成代码差异 2 通过一段测试代码看Deadline Monitoring超时监控 3 使用CAN盒观察Deadline Monitoring实际测试效果 3.1 Case 1:ECU开始工作时,没有收到Frame 3.2 Case 2:ECU工作中,接收的Frame丢失、 4 小结 5 结尾 关键字: DM=Deadline Monitoring超时监控 ComFirstTime...

「汽车电子助手」的博客 1788

leetcode 500. Keyboard Row

Given a List of words, return the words that can be typed using letters of alphabet on only one row's of American keyboard like the image below. Example 1: Input: ["Hello", "Alask...

djph26741的博客 217

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

【Leetcode】500. Keyboard Row

思路: (1)用Map存储字母到所在行的映射。 (2)变量words,对每一个单词,先做小写字母转换存入word,再对word的每个字母进行遍历。用flag标记是否是第一个字母,用row存储第一个字母所在的行,对后续的字母,判断其所在行是否等于row,若不是,直接跳出内层循环继续判断下一个单词。考虑到数组需要预先设置长度,而数组长度未知,所以判断整个单词完毕后将其县存入List,最后再把Lis

筱葭的博客 3500

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

leetcode 500 Keyboard Row C++

这题没什么可说的。 vector findWords(vector& words) { unordered_set set1 = {'Q','q','W','w','E','e','R','r','T','t','Y','y','U','u','I','i','O','o','P','p'}; unordered_set set2 = {'S','s','D','

wcxdell的专栏 1287

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

leetcode-500-Keyboard Row

问题题目:[leetcode-500]思路简单题,没什么说的。注意isOnlyOneRow里面常量字符串可以写成static。这样不用反复开辟和销毁。增强生存期。代码class Solution { public: vector<string> findWords(vector<string>& words) { std::vector<std::string> ret;

Kang_TJU的博客 1154

【LeetCode】500.Keyboard Row

题目:https://leetcode.com/problems/keyboard-row/description/ Example 1: Input: ["Hello", "Alaska", "Dad", "Peace"] Output: ["Alaska", "Dad"] Note: You may use one character in the keybo

Fannie08的博客 395

leetcode【500】keyboard Row

写在最前面:这道题虽然是easy,不过很少有用python实现的,下面我用python讲一下。 leetcode【500】keyboard Row   Given a List of words, return the words that can be typed using letters of alphabet on only one row's of American keyboar...

ssjdoudou的博客 2万+

leetcode500——Keyboard Row

题目大意:给出一些字符串,判断哪些字符串中的字符是由键盘上同一行字母组成的 分析:集合的应用。判断单词中的所有字母是否在多行出现过,如果多个flag都是true那就不符合要求 代码: python转载自https://leetcode-cn.com/problems/keyboard-row/solution/yi-xing-shi-yong-filterhan-shu-de-yi-xing...

tzyshiwolaogongya的博客 243

【LeetCode】500 Keyboard Row

原题链接:500. Keyboard Row。 挑选出字母在键盘上是同一行的单词。 解法 这里使用unordered_set散列容器,它是无序列集合,不包含重复元素,便于查找。 vector<string> findWords(vector<string>& words) { unordered_set<char> row1 = { 'q','w','e','r','t','y','u','i','o','p' }; unordered_set&l

zhcourse的博客 128

Leetcode-500. Keyboard Row

前言:为了后续的实习面试,开始疯狂刷题,非常欢迎志同道合的朋友一起交流。因为时间比较紧张,目前的规划是先过一遍,写出能想到的最优算法,第二遍再考虑最优或者较优的方法。如有错误欢迎指正。博主首发优快云,mcf171专栏。 博客链接:mcf171的博客 —————————————————————————————— Given a List of words, return the

mcf171的专栏 2533

leetcode 500. Keyboard Row 键盘行

题目要求找出所有可以用美式键盘同一行字母打出的单词。通过检查每个单词的首字母属于键盘的哪一行(第一行"qwertyuiop"、第二行"asdfghjkl"或第三行"zxcvbnm"),然后验证该单词所有字母都来自同一行。时间复杂度为O(总字母数),空间复杂度O(1)。代码遍历每个单词,根据首字母确定目标行后检查剩余字母是否均在该行,满足条件的单词加入结果列表。

邹九的个人博客 570

LeetCode500. Keyboard Row [C++]

Given a List of words, return the words that can be typed using letters ofalphabeton only one row's of American keyboard like the image below. Example: Input: ["Hello", "Alaska", "Dad", "...

iuvgood 334

leetcode 500 keyboard row

leetcode 500 keyboardrow

weixin_36908057的博客 335

LeetCode 500: Keyboard Row

水题,hash表。/** * Return an array of size *returnSize. * Note: The returned array must be malloced, assume caller calls free(). */ char** findWords(char** words, int wordsSize, int* returnSize) { *

请叫我AXin 826
上一篇: [LeetCode] 557.Reverse Words in a String III
下一篇: [LeetCode] 620.Not Boring Movies
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值