17 easy 290. 單詞規律

//給定一種規律 pattern 和一個字符串 s ,判斷 s 是否遵循相同的規律。 
//
// 這里的 遵循 指完全匹配,例如, pattern 里的每個字母和字符串 s 中的每個非空單詞之間存在著雙向連接的對應規律。 
//
// 
//
// 示例1: 
//
// 
//輸入: pattern = "abba", s = "dog cat cat dog"
//輸出: true 
//
// 示例 2: 
//
// 
//輸入:pattern = "abba", s = "dog cat cat fish"
//輸出: false 
//
// 示例 3: 
//
// 
//輸入: pattern = "aaaa", s = "dog cat cat dog"
//輸出: false 
//
// 
//
// 提示: 
//
// 
// 1 <= pattern.length <= 300 
// pattern 只包含小寫英文字母 
// 1 <= s.length <= 3000 
// s 只包含小寫英文字母和 ' ' 
// s 不包含 任何前導或尾隨對空格 
// s 中每個單詞都被 單個空格 分隔 
// 
//
// Related Topics 哈希表 字符串 👍 638 👎 0import java.util.HashMap;//leetcode submit region begin(Prohibit modification and deletion)
class Solution {public boolean wordPattern(String pattern, String s) {HashMap<Character, String> map1 = new HashMap<>();HashMap<String, Character> map2 = new HashMap<>();int j = 0;for (int i = 0; i < pattern.length(); i++) {int f = j;if (f > s.length()) {//這里加上>=不影響結果,因為不會有(f=s.length()的情況return false;}while (j < s.length() && s.charAt(j) != ' ') {j++;}String temp = s.substring(f, j);char ch = pattern.charAt(i);//注意String的比較方法if (map1.containsKey(ch) && !temp.equals(map1.get(ch)) ) {return false;}if (map2.containsKey(temp) && map2.get(temp) != ch) {return false;}map1.put(ch,temp);map2.put(temp,ch);j++;}//i循環完后也必須保證j已到達最末尾才算truereturn j > s.length(); //這里加上>=不影響結果,因為不會有j=s.length()的情況}
}
//leetcode submit region end(Prohibit modification and deletion)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/719808.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/719808.shtml
英文地址,請注明出處:http://en.pswp.cn/news/719808.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

24計算機考研調劑 | 西安工大

西安工大 考研調劑招生信息 學校:西安工大 專業:- 年級:2024 招生人數:4 招生狀態:正在招生中 聯系方式:********* (為保護個人隱私,聯系方式僅限APP查看) 補充內容 歡迎化工、材料、環工等專業[或有計算機相關專業&#xff08;智能科學和軟件工程方向&#xff09;、機…

一款不錯的多端SSH工具:Xterminal

1、不僅是強大的SSH工具&#xff0c;更提供本地控制臺&#xff0c;以及更多即將推出的開發相關功能&#xff0c;讓您專注于創造卓越的代碼 2、AI賦能&#xff0c;智能命令提示&#xff0c;為大腦解壓 AI解答&#xff0c;讓你的疑問得到即時解答 AI智能提示&#xff0c;讓每一…

CodeFlying 和 aixcoder兩大免費軟開平臺,孰強孰弱?

今天為大家帶來碼上飛CodeFlying和aixcoder兩款免費的軟件開發平臺效果的測評 一、產品介紹 首先簡單介紹一下這兩個平臺 碼上飛CodeFlying&#xff1a;碼上飛 CodeFlying | AI 智能軟件開發平臺&#xff01; 是一款革命性的軟件開發平臺&#xff0c;它通過將軟件工程和大模…

Redis是AP的還是CP的?

redis是一個開源的內存數據庫&#xff0c;那么他到底是AP的還是CP的呢&#xff1f; 有人說&#xff1a;單機的是redis是cp的&#xff0c;而集群的redis是ap的&#xff1f; 但是我不這么認為&#xff0c;我覺得redis就是ap的&#xff0c;雖然在單機redis中&#xff0c;因為只有…

Git 基本操作 ?作區、暫存區、版本庫

創建本地倉庫&#xff1a; 創建 Git 本地倉庫 要提前說的是&#xff0c;倉庫是進行版本控制的?個文件目錄。我們要想對文件進行版本控制&#xff0c;就必須先創建?個倉庫出來。 首先touch 一個文件&#xff1a; 初始化倉庫&#xff1a; 創建完成后&#xff0c;我們會發現當前…

行列式錯題本

《1800》 1 階數和轉置 A是三階,B是4階,還有2這個系數 2 怎么啥也不會呀,委屈 行列式的拆分+提取系數 3

uniapp 安裝安卓、IOS模擬器并調試

一、安裝Android模擬器并調試 1.下載并安裝Android Studio。 2.創建簡單project。 3.安裝模擬器。 完成安卓模擬器的安裝。 4.啟動模擬器。 5.hbuilderx選擇模擬器、運行。 點擊刷新按鈕后出現模擬器&#xff0c;勾選并運行。 6.調試。 在 HBuilderX 中&#xff0c;項目啟…

每天一道leetcode:20.有效的括號(簡單;棧的經典題目)

?今日份題目 給定一個只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] 的字符串 s &#xff0c;判斷字符串是否有效。 有效字符串需滿足&#xff1a; 左括號必須用相同類型的右括號閉合。 左括號必須以正確的順序閉合。 每個右括號都有一個對…

Nano 33 BLE Sense Rev2學習第一節——環境配置

參考文檔見Access Barometric Pressure Sensor Data on Nano 33 BLE Sense | Arduino Documentation 打開Arduino ide安裝開發板 選擇開發板 連接開發板到電腦&#xff0c;自動識別開發板端口&#xff0c;選擇端口

Python-類型檢查:typing模塊和mypy工具

Python-類型檢查&#xff1a;typing模塊和mypy工具 >>返回Python系列文章目錄<< 文章鏈接: Python中typing模塊 文章鏈接: PyCharm集成類型檢查mypy

ssh 一次執行多條命令(后臺運行)

文章目錄 1. 背景2. 命令2.1 命令分隔符2.2 多行腳本2.3 單行腳本 3. SSH 任務后臺運行 1. 背景 有時我們只需要遠程執行一次任務然后就關閉&#xff0c;而不需要長時間 ssh 登錄到遠程服務器。同時一次任務可能需要執行多條命令&#xff0c;那么我們該如何做呢&#xff1f; …

【Java】查看class文件的jdk編譯版本的兩種方式

一、使用文本編輯工具EditPlus 使用EditPlus打開該class文件&#xff0c;字符集選擇16進制&#xff08;Hex viewer&#xff09;。 僅看第一行數據&#xff0c;前面8個字節CA FE BA BE是固定的。 之后4個字節00 00 是次版本。 次版本后面的4個字節00 34 就是jdk版本。 jdk版本…

torch中的sort用法|torch.sort

今天在學習代碼時&#xff0c;發現有些深度學習的項目中使用到torch.sort()函數&#xff0c;在此記錄一下&#xff0c;方便自己的查閱. torch.sort() 官網給出了非常詳細的介紹&#xff0c;但是為了更進一步掌握這一用法&#xff0c;在此記錄一下。 具體官網鏈接如下&#xf…

華為認證HCIP報名條件有哪些?考試要求介紹

華為HCIP認證是很多網絡工程師的考證首選&#xff0c;尤其對于剛入行不久的網絡工程師們來說&#xff0c;這個證書無論是從難度出發還是從含金量出發&#xff0c;都是值得一考的。 那么如果想報名華為HCIP認證有哪些條件以及考試要求&#xff0c;華為HCIP的報名需不需要通過機…

鏡頭畸變模型及去畸變的原理

1. OpenCV去畸變undistortPoints原理解析 Opencv中鏡頭畸變包含了徑向畸變和切向畸變&#xff0c;本章節主要闡述鏡頭畸變模型以及去畸變的原理。 1.1 鏡頭畸變模型 參考opencv文檔 https://docs.opencv.org/3.1.0/d4/d94/tutorial_camera_calibration.html&#xff0c;opencv…

基于SpringBoot+MYSQL的醫護人員排班系統

基于springboot的醫護人員排班系統錄像 1、 前言介紹 隨著信息技術在管理上越來越深入而廣泛的應用&#xff0c;管理信息系統的實施在技術上已逐步成熟。本文介紹了醫護人員排班系統的開發全過程。通過分析醫護人員排班系統管理的不足&#xff0c;創建了一個計算機管理醫護人員…

LSA頭部結構簡述

LSA&#xff08;Link State Advertisement&#xff09;是一種用于路由協議頭部結構&#xff0c;用于在網絡中傳遞路由信息。 LSA頭部結構包含以下幾個字段&#xff1a; 1、LSA類型&#xff08;LSA Type&#xff09;&#xff1a;指示LSA的類型&#xff0c;不同類型的LSA用于傳遞…

Rabbitmq消息丟失-消費者消息丟失(二)

說明&#xff1a;消費端在處理消息的過程中出現異常&#xff0c;例如&#xff1a;業務邏輯異常&#xff0c;或者消費者被停機&#xff0c;或者網絡斷開連接等&#xff0c;以上等情況使消息沒有得到正確恰當的處理&#xff0c;也會使消息丟失。 分析&#xff1a;分析就是說明中…

Composer基礎使用 SDK包初始化

Composer 的工作原理 我們在使用 Composer 之前我們得了解一下它的實現原理&#xff0c;它主要由三個部分組成&#xff1a;命令行工具、包倉庫、代碼庫&#xff1a; Packagist 它是官方倉庫&#xff0c;也就是我們平常說的 Composer 源&#xff0c;它的作用是存儲這些包的信息…

參數引入和全局變量引入實現-目標和

LCR 102. 目標和 - 力扣&#xff08;LeetCode&#xff09; 分析題意&#xff0c;畫出決策樹&#xff0c;其他的思路都跟前面講過的類似&#xff1a; 全局變量引入實現&#xff1a; 全局變量的引入&#xff0c;需要手動處理回溯&#xff1b; class Solution {int ret; //…