面試150 添加與搜索單詞--數據結構設計

在這里插入圖片描述

思路

通過哈希法去實現,這里主要描述search的思路:如果’.‘不在word中,我們只需要去查詢word在不在set中。如果’.‘存在,我們對哈希中的字符串進行遍歷w,如果當前字符串的長度不等于word跳過,對word進行遍歷,比較word的每一個元素與w的每一個元素,如果word[i]不等于’.'并且不等于w[i],則說明不匹配,最后return False。

class WordDictionary:def __init__(self):self.d=set()def addWord(self, word: str) -> None:self.d.add(word)def search(self, word: str) -> bool:if '.' not in word:return word in self.d for w in self.d:if len(w)!=len(word):continuematch=Truefor i in range(len(word)):if word[i]!='.' and word[i]!=w[i]:match=Falsebreakif match:return True return False# Your WordDictionary object will be instantiated and called as such:
# obj = WordDictionary()
# obj.addWord(word)
# param_2 = obj.search(word)

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

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

相關文章

學習打卡網站(搭子版本)

概述 之前用了網上的一些學習打卡類app,基本都是收費的,而且有些自己想要的功能卻沒有,甚至還有廣告,正好暑假是個需要容易懶惰的時間,所以干脆自己做了一個能和學習搭子一起記錄計劃的小網站。 昨天早上開始寫&#x…

分享如何在Window系統的云服務器上部署網站及域名解析+SSL

最近看到阿里云的服務器有個199的活動,買了個2核4G帶寬5M的服務器,用于小網站的運營也足夠,于是就買一個,并且我還挑了個新加坡的站點,本想著運營獨立站,用新加坡的站點外網訪問會更友好一點。于是問題就來…

FastAdmin系統框架通用操作平滑遷移到新服務器的詳細步驟-優雅草卓伊凡

FastAdmin系統框架通用操作平滑遷移到新服務器的詳細步驟-優雅草卓伊凡我們蜻蜓hr系統采用的后端框架就是fastadmin,因此我們平穩遷移以此為例,為什么要遷移一份是因為有甲方需要。遷移FastAdmin系統到新服務器需要確保數據完整性和系統功能正常。以下是…

Request和Response相關介紹

Request 和 Response 是什么? Request(請求對象):用來接收瀏覽器發過來的數據。 Response(響應對象):用來把服務器處理后的結果返回給瀏覽器。 1. request 的作用(獲取請求數據&am…

Springboot 實現熱部署

spring為開發者提供了一個名為spring-boot-devtools的模塊來使Spring Boot應用支持熱部署&#xff0c;提高開發者的開發效率&#xff0c;無需手動重啟Spring Boot應用。引入依賴<dependency><groupId>org.springframework.boot</groupId><artifactId>s…

虛擬機擴展磁盤容量后擴展分區大小

1. 首先檢查磁盤剩余空間sudo fdisk -l /dev/sda2. 如果有未分配空間&#xff0c;直接擴展分區sudo fdisk /dev/sda在fdisk交互界面中&#xff0c;依次寫入d # 刪除分區 3 # 例如選擇分區3&#xff08;/dev/sda3&#xff09; n # 新建分區 p # 主分區 3 # 分區號3 # 起始扇…

元宇宙與游戲:虛實交融的數字文明新紀元

引言&#xff1a;當游戲遇見元宇宙在紐約現代藝術博物館&#xff08;MoMA&#xff09;的"虛擬世界"特展中&#xff0c;一幅數字藝術作品《元宇宙誕生》引發觀展熱潮。這幅由AI與人類藝術家共同創作的作品&#xff0c;描繪了游戲《堡壘之夜》的虛擬演唱會與現實世界交…

音視頻學習(四十二):H264幀間壓縮技術

必要性與優勢 原始數字視頻數據量龐大&#xff0c;未經壓縮的視頻難以有效傳輸和存儲。例如&#xff0c;一個 1080p、30fps 的無壓縮視頻&#xff0c;每秒數據量可達數百兆比特。視頻壓縮的目標是在保證視覺質量的前提下&#xff0c;最大限度地減少數據冗余。視頻數據中存在多種…

微服務雪崩防護最佳實踐之sentinel

思考1、當服務訪問量達到一定程度&#xff0c;流量扛不住的時候&#xff0c;該如何處理&#xff1f;2、服務之間相互依賴&#xff0c;當服務A出現響應時間過長&#xff0c;影響到服務B的響應&#xff0c;進而產生連鎖反應&#xff0c;直至影響整個依賴鏈上的所有服務&#xff0…

阿里云監控及運維常見問題

云監控介紹&#xff1a;阿里云的云監控服務&#xff08;CloudMonitor&#xff09;是一款簡單易用、功能強大的監控工具&#xff0c;主要用來幫助用戶實時監控阿里 云上的各種資源&#xff08;比如服務器、數據庫、網絡等&#xff09;&#xff0c;并在出現問題時及時發出警報&am…

深入解析 vLLM 分布式推理與部署策略

在當今人工智能快速發展的時代&#xff0c;大型語言模型&#xff08;LLM&#xff09;的推理和部署面臨著諸多挑戰&#xff0c;尤其是當模型規模日益龐大時&#xff0c;如何高效地利用硬件資源成為關鍵問題。vLLM 作為一種強大的工具&#xff0c;為分布式推理和部署提供了多種策…

PostgreSQL 終端命令詳解及實際應用案例

PostgreSQL 作為一款功能強大的開源關系型數據庫&#xff0c;其終端命令是數據庫管理員、開發人員日常操作的核心工具。這些命令覆蓋數據庫連接、對象管理、數據操作、備份恢復、權限控制等多個維度&#xff0c;掌握其實際應用場景能顯著提升工作效率。本文結合不同行業的實操案…

步進電機基礎

1、ENABLE ̄\overline{ENABLE}ENABLE 的意思&#xff1a; ENABLE上面的橫線表示這是一個低電平有效的信號&#xff1a;當ENABLE信號為低電平&#xff08;0V或邏輯0&#xff09;時&#xff0c;芯片被使能&#xff08;激活&#xff09;當ENABLE信號為高電平&#xff08;VDD或邏輯…

Redis進階--緩存

目錄 一、引言 二、介紹 1.為什么Mysql的速度慢呢&#xff1f; 2.緩存更新策略 1.定期生成 2.實時生成 3.redis的內存淘汰機制 4.注意事項 1.緩存預熱 2.緩存穿透 3.緩存擊穿 4.緩存雪崩 三、總結 一、引言 本篇文章將介紹Redis其中一個重要的作用&#xff0c;作為…

微軟原版系統下載的幾個好用網站

“不要因為走得太遠&#xff0c;而忘記為什么出發。” 愿每一位Windows用戶&#xff0c;都能在這份情懷中找到屬于自己的小確幸&#xff01;滿滿的情懷&#xff01; 微軟官方渠道 微軟官網提供純凈的ISO鏡像下載&#xff0c;適用于Windows 10/11等系統。訪問Microsoft官網下…

kotlin Flow快速學習2025

其實&#xff0c;第一章節&#xff0c;只是讓你了解下Flow的基本情況。我們開發中&#xff0c;基本很少使用這種模式。所以來講&#xff0c;我們甚至可以直接使用StateFlow和SharedFlow才是正途。這是很多教程沒有說明的點。所以第一章隨便瀏覽下即可。日后再補充理解都是可以的…

【人工智能99問】什么是教師強制?(16/99)

文章目錄什么是教師強制&#xff1f;教師強制&#xff08;Teacher Forcing&#xff09;的定義原比例&#xff08;Original Proportion&#xff09;教師強制的舉例說明&#xff08;一&#xff09;教師強制的舉例說明&#xff08;二&#xff09;優點和缺點解決曝光偏差的方法什么…

【WPF】WPF 自定義控件之依賴屬性

&#x1f4e6; WPF 自定義控件之依賴屬性 在開發 WPF 應用時&#xff0c;自定義控件能幫助我們復用邏輯和樣式&#xff0c;但我很快會遇到一個問題&#xff1a;在控件內部如何支持數據綁定和屬性變更通知&#xff1f;特別是我們繼承自 Control 的時候&#xff0c;已經不能再繼承…

DOM型XSS破壞

目錄 首先 然后 第一種 第二種&#xff08;DOM&#xff09; HTMLCollection HTML Relationships Custom 解 首先 <script>//urlencode解碼 //location接口的hash屬性是一個字符串&#xff0c;包含一個“#”后跟位置URL的片段標識符。如果URL沒有片段標識符&#…

Linux C 多線程基本操作

我們已經了解進程的基本概念&#xff1a;進程是正在執行的程序&#xff0c;并且是系統資源分配的基本單位。當用戶需要在一臺計算機上去完成多個獨立的工作任務時&#xff0c;可以使用多進程的方式&#xff0c;為每個獨立的工作任務分配一個進程。多進程的管理則由操作系統負責…