【算法刷題day55】Leetcode:583. 兩個字符串的刪除操作、72. 編輯距離

文章目錄

    • Leetcode 583. 兩個字符串的刪除操作
      • 解題思路
      • 代碼
      • 總結
    • Leetcode 72. 編輯距離
      • 解題思路
      • 代碼
      • 總結

草稿圖網站
java的Deque

Leetcode 583. 兩個字符串的刪除操作

題目:583. 兩個字符串的刪除操作
解析:代碼隨想錄解析

解題思路

dp數組的含義是,從word1從0到i-1,word2從0到j-1匹配上最少需要刪除多少個字符

代碼

class Solution {public int minDistance(String word1, String word2) {int m = word1.length();int n = word2.length();int [][]dp = new int[m+1][n+1];for (int i = 0; i <= m; i++)dp[i][0] = i;for (int j = 0; j <= n; j++)dp[0][j] = j;for (int i = 1; i <= m; i++) {for (int j = 1; j <= n; j++) {if (word1.charAt(i-1) == word2.charAt(j-1))dp[i][j] = dp[i-1][j-1];elsedp[i][j] = Math.min(dp[i][j-1] + 1 , Math.min(dp[i-1][j] + 1, dp[i-1][j-1] + 2));}}return dp[m][n];}
}

總結

暫無

Leetcode 72. 編輯距離

題目:72. 編輯距離
解析:代碼隨想錄解析

解題思路

和上面那題的區別是,改了一個dp[i-1][i-1] + 1,因為可以修改,而上一題只能刪除兩個

代碼

class Solution {public int minDistance(String word1, String word2) {int m = word1.length();int n = word2.length();int [][]dp = new int[m+1][n+1];for (int i = 0; i <= m; i++)dp[i][0] = i;for (int j = 0; j <= n; j++)dp[0][j] = j;for (int i = 1; i <= m; i++) {for (int j = 1; j <= n; j++) {if (word1.charAt(i-1) == word2.charAt(j-1))dp[i][j] = dp[i-1][j-1];elsedp[i][j] = Math.min(dp[i-1][j], Math.min(dp[i][j-1], dp[i-1][j-1])) + 1;}}return dp[m][n];}
}

總結

暫無

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

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

相關文章

哪款桌面便簽app能幫助我提升工作效率

作為上班族&#xff0c;我們每天都要處理大量的工作事項&#xff0c;從策劃方案到處理郵件&#xff0c;每一個環節都需高效且有條不紊。在這樣的工作環境下&#xff0c;提升效率顯得尤為重要。而選擇一款優秀的桌面便簽app&#xff0c;無疑是提高工作效率的關鍵。 桌面便簽app…

【數據結構】數據結構大匯總 {數據結構的分類總結:定義和特性、實現方式、操作與復雜度、適用場景、相關算法、應用實例}

一、線性結構 1.1 順序表 定義和特性&#xff1a;順序表是一種線性表的存儲結構&#xff0c;它采用一段地址連續的存儲單元依次存儲線性表中的元素。順序表具有隨機訪問的特性&#xff0c;即可以通過元素的下標直接訪問元素。 實現方式&#xff1a;順序表可以通過數組來實現&…

基于51單片機的非接觸式無線紅外測溫

基于51單片機的無線紅外測溫 &#xff08;程序&#xff0b;原理圖&#xff0b;設計報告&#xff09; 功能介紹 具體功能&#xff1a; 1.采用紅外溫度傳感器測溫并用LCD1602顯示&#xff1b; 2.按鍵為啟動按鍵、保存按鍵、顯示數據按鍵&#xff0c;可以實現對溫度數值的控制…

【制作100個unity游戲之26】unity2d橫版卷軸動作類游戲6(附帶項目源碼)

最終效果 系列導航 文章目錄 最終效果系列導航前言敵人動畫配置撞墻判斷敵人基本AI邏輯實現 野豬受傷死亡死亡敵人死亡時&#xff0c;還是會對人物產生傷害有限狀態機&抽象類多態 定義不同狀態的敵人行為防止野豬在懸崖掉下去野豬的追擊狀態的轉換敵人主動查找玩家 追擊狀態…

基于微信小程序+JAVA Springboot 實現的【智慧鄉村旅游服務平臺】app+后臺管理系統 (內附設計LW + PPT+ 源碼+ 演示視頻 下載)

項目名稱 項目名稱&#xff1a; 基于微信小程序的智慧鄉村旅游服務平臺的設計與實現 項目技術棧 該項目采用了以下核心技術棧&#xff1a; 后端框架/庫&#xff1a; Java SSM框架數據庫&#xff1a; MySQL前端技術&#xff1a; 微信開發者工具、uni-app其他技術&#xff1a…

8B10B編碼(高速收發器五)

1、8B10B解決的問題 8B10B編碼是1983年IBM公司提出的傳輸編碼標準&#xff0c;通常用于高速收發器中&#xff0c;常見的JESD204B、SATA等接口協議&#xff0c;使用查表就可以實現編碼和解碼。 在這些高速收發器的接收端需要通過CDR技術去恢復時鐘與數據的相位關系&#xff0c;在…

Linux day6 yum下載,systemctl,

yum命令 yum [-y] install wget 通過yum下載wget小工具 -y的意思是&#xff0c;如果有詢問&#xff0c;自動確認&#xff08;總是允許&#xff09;。 yum remove wget 也可以通過這種方式卸載wget

Git版本控制工具的原理及應用詳解(四)

本系列文章簡介&#xff1a; 隨著軟件開發的復雜性不斷增加&#xff0c;版本控制成為了開發團隊中不可或缺的工具之一。在過去的幾十年里&#xff0c;版本控制工具經歷了各種發展和演變&#xff0c;其中Git無疑是目前最受歡迎和廣泛應用的版本控制工具之一。 Git的出現為開發者…

Apache Flink典型應用場景全面解析

Apache Flink作為一個高度靈活且功能強大的開源流處理框架&#xff0c;因其在實時數據處理、大規模數據分析以及事件驅動應用方面的卓越表現而受到廣泛青睞。以下是Flink幾個典型的使用場景&#xff0c;展示了其在不同行業和業務需求中的應用潛力。 實時數據分析與監控 應用描述…

工作小記2——二周年記

不知不覺&#xff0c;工作已經有二周年&#xff0c; 由于公司電腦不能登錄csdn&#xff0c;不能登github&#xff0c;我已經好久沒有碰過我的個人博客空間啦。現在從大廠跳到小公司&#xff0c;舒適度翻倍提升&#xff01;現在我要回歸CSDN啦&#xff01; 總體感受&#xff1a…

playwright 自動化框架python教程(九)

Playwright 提供了一系列API來處理各種瀏覽器中的特殊操作 Playwright 提供了一系列API來處理各種瀏覽器中的特殊操作&#xff0c;包括彈窗&#xff08;如alert、confirm、prompt&#xff09;、新窗口的打開與管理&#xff0c;以及其他一些高級交互。以下是處理這些情況的一些…

Solon Cloud Event 新的事務特性與應用

1、Solon Cloud Event&#xff1f; 是 Solon 分布式事件總線的解決方案。也是 Solon “最終一致性”分布式事務的解決方案之一2、事務特性 事務&#xff1f;就是要求 Event 有原子性&#xff0c;當多個 Event 發布時&#xff0c;要么全成功&#xff0c;要么全失敗。 public …

PyQt5 中的 List View

文章目錄 1. 基礎概念2. 創建 List View2.1 PyQt5 中一個簡單的 List View 實例2.2 代碼解釋2.3 運行結果 3. 數據模型3.1 標準模型3.2 自定義模型 4. 自定義 List View4.1 使用樣式表 (QSS)4.2 設置項委托 (Item Delegate) 5.事件處理6. 與數據交互6.1 添加數據6.2 刪除數據6.…

【哈希】Leetcode 205. 同構字符串【簡單】

同構字符串 給定兩個字符串 s 和 t &#xff0c;判斷它們是否是同構的。 如果 s 中的字符可以按某種映射關系替換得到 t &#xff0c;那么這兩個字符串是同構的。 每個出現的字符都應當映射到另一個字符&#xff0c;同時不改變字符的順序。不同字符不能映射到同一個字符上&am…

如何解決 Scrapy 下載圖片時的文件名錯誤問題

在使用 Scrapy 的 ImagesPipeline 下載圖片時&#xff0c;有時會遇到因為文件名的問題導致下載失敗的情況。本文將詳細解釋這種錯誤的原因&#xff0c;并提供一個簡單易懂的解決方案&#xff0c;幫助大家避免類似的問題。 問題描述 在下載圖片時&#xff0c;如果圖片的名字是…

C語言到底怎么學?

C語言到底怎么學&#xff1f; 1、工欲善其事&#xff0c;必先利其器 這里介紹幾個華清遠見學習C語言必備的工具: VMware、ubuntu。 VMware是一家提供虛擬化軟件和解決方案的公司&#xff0c;VMware的旗艦產品是VMware Workstation&#xff0c;這是一種虛擬機軟件&#xff0c;…

echers配置項:數據過多時,折疊數據縮放查看

當數據過多時&#xff0c;如上圖所示的時間點&#xff0c;會自動折疊&#xff0c;此時鼠標縮放還不起作用&#xff0c;我們配置如下代碼 let option {dataZoom: [{startValue: 05:00}, // 這個值需要跟 第一條 時間數據對應上{type: inside}], }配置后&#xff0c;就可以進行…

echers配置項:折線圖,折現的顏色修改

如上圖所示&#xff1a;紅框內的折現顏色修改&#xff0c;并隱藏默認的點 series: [{data: [1, 230, 224, 218, 135, 147, 760,1500,1200,2500,2000],type: line,lineStyle: {color: #00DBFE // 折現顏色},symbol:none, // 不顯示點smooth: true, // 折現角度&#xff1a;圓滑…

hadoop生態圈集群搭建(持續更新240513)

Hadoop生態圈 Linux1.修改ip地址2.重啟network服務3.安裝插件4.關閉防火墻5.創建用戶6.創建目錄7.修改目錄的所屬主和所屬組為lxy8.修改主機名:hadoop102 (注意名字后面不要加空格)9.修改hosts文件10.等插件都裝完后再重啟Linux11.把xshell的登錄用戶換成lxy &#xff08;注意&…

5W 3KVAC隔離 寬電壓輸入 AC/DC 電源模塊——TP05AL系列

TP05AL系列產品是一款經濟型開板式開關電源&#xff0c;輸出功率為5W&#xff0c;具有可靠性高、小體積、性價比高等特點&#xff0c;廣泛用于工控和電力儀器、儀表、智能家居等相關行業。