算法-Word Pattern-单词规律

基于随机pattern的相机标定算法 基于随机pattern的相机标定算法,算的实现基于opencv3扩展库,代码工程基于Qt5 立即下载

1、题目描述

给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。
这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接的对应规律。

示例1:
输入: pattern = "abba", str = "dog cat cat dog"
输出: true

2、题目分析

  • 一个字符串对应一个字母,也就是"一一对应"的关系
  • 用什么数据结构处理这种关系最合适?当然是HashMap,一个键对应一个值
  • 用空格分离的字符串可以用Sting的split(String s)来切分成数组ss
  • 先进行初始条件判断,pattern和ss的长度不一致返回false
  • 之后依次加入HashMap
    • 数组中不包含该键,如果包含对应的值返回false,否则就加入map
    • 数组中包含改键,查看对应值是不是ss[i]对应

3、代码实现

class Solution {
    public boolean wordPattern(String pattern, String s) {
        String[] ss = s.split(" ");
        if(pattern.length() != ss.length) return false;
        Map<Character,String> map = new HashMap<>();
        for(int i = 0;i < pattern.length();i++){
            char c = pattern.charAt(i);
            if(!map.containsKey(c)){
                if(map.containsValue(ss[i])) return false;
                else map.put(c,ss[i]);
            }else{
                if(!map.get(c).equals(ss[i])) return false;
            }
        }
        return true;
    }
}

4、复杂度分析

  • 时间复杂度:O(N)
  • 空间复杂度:O(N)
基于随机pattern的多相机标定算法 基于随机pattern的多相机标定算法,算法实现基于opencv3扩展库,代码工程基于Qt5 立即下载

相关推荐

别再用MounRiver了!在VSCode里用PlatformIO搞定CH32V208开发(附完整配置流程)

本文详细介绍了如何在VSCode中使用PlatformIO进行CH32V208开发,替代传统的MounRiver Studio。通过完整的配置流程和优化技巧,开发者可以构建高效、现代化的RISC-V开发环境,显著提升编译速度和开发效率。

weixin_28711397的博客 533

LeetCode单词规律解法

LeetCode单词规律解法 给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。 这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接的对应规律。 示例1: 输入: pattern = “abba”, str = “dog cat cat dog” 输出: true 示例 2: 输入:pattern...

adressdeep的博客 348

Lama:基于傅立叶卷积的分辨率鲁棒性大掩模修复

为了缓解修复网络和损失函数都缺乏有效的感受野这个问题,提出了大掩模修复(LaMa)。LaMa基于一种新的修复网络架构,该架构使用快速傅立叶卷积(FFC),具有图像范围的感受野;高感受野感知损失;大型训练掩码,释放前两个组件的潜力。

qq_44926214的博客 1416

290:单词规律

问题描述 给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。 这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接的对应规律。 示例 输入: pattern = "abba", str = "dog cat cat dog" 输出: true 输入:pattern = "abba", str = ...

weixin_41687289的博客 330

STM32+A4988控制步进电机

基于A4988芯片驱动42步进电机,在STM32F1上进行测试,最高可以实现16细分。

个人博客 4万+

Android 音频源码分析——音量调节流程

源码分析基于android9.0 一、声音类型 对于大多数手机用户来说,操作手机音量按键可以看到,声音类型分为四种:媒体、铃声、闹钟、通话,但是其系统内部则分为十几种类型。 声⾳类型用来区分不同播放用途及播放设备,包含11中类型 定义在 frameworks/base/media/java/android/media/AudioSystem.java中 /** Used to identify the default audio stream volume */ public static final in

奋斗的菜鸟ing 3816

[leetCode]219. 存在重复元素 II

博客园: 题目 链接:https://leetcode-cn.com/problems/contains-duplicate-ii 给定一个整数数组和一个整数 k,判断数组中是否存在两个不同的索引 i 和 j,使得 nums [i] = nums [j],并且 i 和 j 的差的 绝对值 至多为 k。 示例 1: 输入: nums = [1,2,3,1], k = 3 输出: true 示例 2: 输入: nums = [1,0,1,1], k = 1 输出: true 示例 3: 输入: n.

Warms的博客 266

手把手教你安装 OpenClaw 小龙虾(MAC安装教程),一次成功不踩坑

本文详细介绍了在Mac上安装OpenClaw的完整流程。主要内容包括:1)准备工作(磁盘空间、网络环境、终端工具);2)安装Homebrew包管理器及常见问题解决;3)安装Node.js 22+版本(环境核心);4)Git安装与验证;5)OpenClaw项目克隆、依赖安装及运行配置;6)大模型配置方法(以MiniMax为例)。文章提供了详细的命令行操作步骤和常见错误解决方案,特别强调了网络环境要求和Apple Silicon芯片的原生支持注意事项。最后展示了验证配置成功的方法和资源获取渠道。

Chengbei11的博客 6338

LeetCode 290. Word Pattern 题解

本题是哈希表的经典应用问题,主要考察对哈希表思想的理解和使用。通过使用两个哈希表,我们可以高效地判断字符串s是否遵循给定的规律pattern。哈希表的核心思想是:使用两个哈希表来存储字符到单词的映射和单词到字符的映射,确保每个字符对应唯一的单词,每个单词对应唯一的字符。这种方法不仅适用于单词规律问题,还可以应用于许多其他需要建立双向映射的问题。掌握哈希表的使用,对于解决这类问题非常重要。

cannonjinx的博客 4089

EtherCAT主站IGH-- 49 -- 搭建xenomai系统及自己的IGH主站

以上就是搭建xenomai系统及自己的IGH主站的内容。有不明白的地方欢迎留言;有建议欢迎留言,我后面编写文档好改进。创作不容,如果文档对您有帮助,记得给个赞。

常驻客栈的博客--嵌入式EtherCAT 3156

微信小程序 - 完美解决“code“:“NO_AUTH“,“message“:“商户号该产品权限未开通,请前往商户平台>产品中心检查后重试“(微信小程序报错问题排查解决)

微信小程序NO_AUTH: 商户号该产品权限未开通,请前往商户平台>产品中心检查后重试?微信小程序提示商户号该产品权限未开通,请前往商户平台>产品中心检查后重试,微信小程序"code":"NO_AUTH"错误码怎么解决,报错信息如下:httpResponseBody[{"code":"NO_AUTH","message":"商户号该产品权限未开通,请前往商户平台>产品中心检查后重试"}],微信小程序支付问题,如何解决这个问题,虚拟支付商户号,虚拟支付商户号里面没有产品支付的页面,排查商户号没问题,商户号配置

🏆 前端领域优质创作者 4444

Leetcode - 290. Word Pattern算法

1. 算法描述 给定匹配格式,判断字符串是否符合格式。 单词字符串需要完全符合给定的匹配格式,格式字符串和单词字符串有双射关系。 Example 1: Input: pattern = “abba”, str = “dog cat cat dog” Output: true Example 2: Input:pattern = “abba”, str = “dog cat cat fish” Output: false Example 3: Input: pattern = “aaaa”, str = “d

liliangnike的博客 338

微信小程序推广策略,打开小程序领域流量大门

本文旨在为小程序开发者、运营者和企业主提供一套完整的微信小程序推广策略体系,帮助他们在竞争激烈的小程序生态中获得更多流量和用户。内容涵盖从0到1的冷启动策略,到成熟期的增长技巧。本文将首先介绍小程序的基础推广设置,然后深入探讨各种流量获取渠道,接着分析数据驱动的优化方法,最后展望未来发展趋势。小程序:无需下载安装即可使用的应用,运行在微信生态内:独立访客数:页面浏览量转化率:完成目标行为的用户比例留存率:用户在一定时间后仍活跃的比例自然流量获取:通过优化搜索、完善资料等方式获得基础流量社交裂变。

小程序开发 1031

LeetCode 290——单词规律

一、题目介绍 给定一种规律 pattern和一个字符串str,判断 str 是否遵循相同的规律。 这里的遵循指完全匹配,例如,pattern里的每个字母和字符串str中的每个非空单词之间存在着双向连接的对应规律。 示例1: 输入: pattern = "abba", str = "dog cat cat dog" 输出: true 示例 2: 输入:pattern = ...

Asher 287

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

LeetCode—— 290 单词规律

问题描述 给定一种规律 pattern和一个字符串str,判断 str 是否遵循相同的规律。 这里的遵循指完全匹配,例如,pattern里的每个字母和字符串str中的每个非空单词之间存在着双向连接的对应规律。 示例1: 输入: pattern = "abba", str = "dog cat cat dog" 输出: true 示例 2: 输入:pattern = "a...

优快云的博客 294

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

单词规律(word-pattern)

文章目录290. 单词规律(word-pattern)代码与思路 290. 单词规律(word-pattern) 给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。 这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接的对应规律。 示例1: 输入: pattern = "abba", str = "...

mirana的专栏 536

Leetcode 290.单词规律(Word Pattern)

Leetcode 290.单词规律 1 题目描述(Leetcode题目链接)   给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。 这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接的对应规律。 输入: pattern = "abba", str = "dog cat cat dog" 输出: true 输入:pattern = "abba", str = "dog cat cat fish" 输出:

qq_39378221的博客 276

LeetCode 290. 单词规律(Word Pattern) 41

290. 单词规律 290. Word Pattern 题目描述 给定一种规律 pattern和一个字符串str,判断 str 是否遵循相同的规律。 这里的遵循指完全匹配,例如,pattern里的每个字母和字符串str中的每个非空单词之间存在着双向连接的对应规律。 每日一算法2019/6/13Day 41LeetCode290. Word Pattern 示例1: 输入: patte...

weixin_30325071的博客 229

LeetCode 290. 单词规律(哈希)

1. 题目 给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。 这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接的对应规律。 示例1: 输入: pattern = "abba", str = "dog cat cat dog" 输出: true 示例 2: 输入:pattern = "abba...

Michael是个半路程序员 1102

LeetCode - 290 - 单词规律(word-pattern)

Create by jsliang on 2019-07-19 15:23:43Recently revised in 2019-07-19 16:17:43一 目录不折...

weixin_41806099的博客 266

290、单词规律(Word Pattern)

290、单词规律(Word Pattern) 题目: 给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。 这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接的对应规律。 示例1: 输入: pattern = "abba", str = "dog cat cat dog" 输出: true 示例 2: 输入:pattern = "abba", str = "dog cat cat fish" 输出: fal

南极没有熊的博客 203

给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。

mark一下学习笔记 public static void main(String args[]) { String pattern = "bbba"; String str = "dog cat cat fish"; boolean max = wordPattern(pattern, str); System.out.println(max); } /**...

ccmedu的博客 3445

290.单词规律(JS)——LeetCode

这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接的对应规律。输入: pattern = “abba”, str = “dog cat cat dog”输入:pattern = “abba”, str = “dog cat cat fish”输入: pattern = “aaaa”, str = “dog cat cat dog”输入: pattern = “abba”, str = “dog dog dog dog”

zhang1339435196的博客 653

290. Word Pattern

290. 单词模式 给定一种规律 pattern和一个字符串str,判断 str 是否遵循相同的规律。 这里的遵循指完全匹配,例如,pattern里的每个字母和字符串str中的每个非空单词之间存在着双向连接的对应规律。 示例1: 输入: pattern = "abba", str = "dog cat cat dog" 输出: true 示例 ...

GGGGITFKBJG的主页 179

【LeetCode】290. Word Pattern 单词规律(Easy)(JAVA)每日一题

【LeetCode】290. Word Pattern 单词规律(Easy)(JAVA) 题目地址: https://leetcode.com/problems/word-pattern/ 题目描述: Given a pattern and a string s, find if s follows the same pattern. Here follow means a full match, such that there is a bijection between a letter in

qq_16927853的博客 286

290. 单词规律(javascript) 290. Word Pattern

290. 单词规律(javascript) 290. Word Pattern

ingenuou_的博客 415
上一篇: 算法-Monotone Increasing Digits-单调递增的数字
下一篇: 算法-Remove Duplicate Letters-去除重复字母
酱油瓶啤酒杯
博客等级 码龄8年 35粉丝 135原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值