動態規劃簡單題2

leetcode91題(解碼方法)

?分析題目:

1.這是一種解碼,就是給多個數字組成的字符串,把這些數字解碼成字母,看看一共有多少種

2.如果一個數字前有前導0就不合法,比如06,這與6不同,所以06不能解碼

算法原理:

狀態表示:經驗+題目(以i位置為結尾時,巴拉巴拉)

根據題目,狀態就是以i位置為結尾時,一共有多少總解碼方式

所以dp[i]:以i結尾時有多少總解碼方式

狀態轉移方程:根據最近的一步,劃分問題

成功與失敗都有可能,所以最后的dp[i]編寫代碼時要注意?

?初始化:保證填表時不會越界

根據狀態方程我們看出0和1可能會越界,所以我們需要單獨填0/1的位置,0的位置就是一個字符,那它如果是1<=a<=9的化就是合法的,dp[0]:表示的是以0位置為結尾,總的解碼方法

1可以自己畫圖理解以下

填表順序:

從左往右

返回值:

dp[n-1]?

代碼編寫

?細節問題:

有沒有發現我們的初始化很繁瑣

這里介紹處理邊界問題和初始化的技巧:

如果覺得初始化0和1的位置很繁瑣,那就多開一個空間,讓0的位置沒用

但注意:要保證后面的填表是正確的,比如你填2位置的時候,2是進入循環填的,如果你一開始0的位置初始化為0,2的填表就可能出錯,dp[2]=dp[1]+dp[0];這時候即使你組合和單獨都解碼成功,2都會填成1;所以我們要注意一開始0的位置要初始化為1才能保證后面填表正確

要注意下標的映射關系,dp[i-1]=s[i];找解碼方式的時候要注意dp和s下標映射關系

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

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

相關文章

(007)Excel 公式的使用

文章目錄 邏輯運算公式的參數常用函數引用方式引用工作表和工作簿表格的引用修改公式的計算時機區域交叉引用 邏輯運算 公式的參數 單元格引用&#xff1a;SUM(A1:A24)。字面值&#xff1a;SQRT(121)。字面文本字符串&#xff1a;PROPER(“john.f.smith”)。表達式&#xff1a…

Unity 和 Unreal Engine(UE) 兩大主流游戲引擎的核心使用方法

以下是 Unity 和 Unreal Engine&#xff08;UE&#xff09; 兩大主流游戲引擎的核心使用方法和對比分析&#xff0c;幫助開發者快速上手并根據項目需求選擇合適工具&#xff1a; 一、Unity 使用指南 1. 安裝與配置 安裝&#xff1a;從 Unity Hub 下載&#xff0c;選擇長期支持…

猜數字游戲:從數學原理到交互體驗的完整設計指南

目錄 猜數字游戲&#xff1a;從數學原理到交互體驗的完整設計指南引言第一章 游戲數學原理1.1 均勻分布與隨機生成1.2 最優猜測策略 第二章 游戲系統設計2.1 核心架構2.2 動態難度系統 第三章 交互設計細節3.1 輸入驗證系統3.2 漸進式提示機制 第四章 進階功能設計4.1 智能輔導…

2025工業大模型白皮書 | 螞蟻工廠北京航空航天大學聯合出品

由螞蟻工廠與北京航空航天大學聯合發布的《2025工業大模型白皮書》是一部針對工業領域大模型技術發展的前瞻性研究報告。該白皮書系統梳理了工業大模型的技術演進、核心應用場景、關鍵挑戰及未來發展趨勢&#xff0c;旨在為制造業數字化轉型提供理論支撐和實踐指南。作為產學研…

JavaWeb:后端web基礎(TomcatServletHTTP)

一、今日內容 二、Tomcat 介紹與使用 介紹 基本使用 小結 配置 配置 查找進程 三、Servlet 什么是Servlet 快速入門 需求 步驟 1.新建工程-模塊&#xff08;Maven&#xff09; 2.修改打包方式-war 3.編寫代碼 /*** 可以選擇繼承HttpServlet*/ WebServlet("/hello&q…

構建現代分布式云架構的三大支柱:服務化、Service Mesh 與 Serverless

目錄 前言1. 服務化架構模式&#xff1a;構建可擴展的基礎單元1.1 服務化的定義與演進1.2 在分布式云中的價值1.3 面臨的挑戰 2. Service Mesh 架構&#xff1a;服務通信的治理中樞2.1 什么是 Service Mesh&#xff1f;2.2 功能與優勢2.3 在分布式云中的角色2.4 落地難點 3. Se…

嵌入式C語言的運算符與輸入輸出

目錄 1. 運算符 1.1 位運算符 1.1.1 位運算 ~ 1.1.2 位邏輯與 & 1.1.3 位邏輯或 | 1.1.4 位邏輯異或 ^ 1.1.5 位移位運算 1.1.6 將無符號位的某位快速置 1 1.2 三目運算符 1.3 逗號運算符 1.4 運算符優先級 2. 輸出 2.1 字符輸出函數 2.2 格式輸出函數 2.3 字符…

IPD研學:76頁頁基于IPD思想-華為需求管理培訓方案【附全文閱讀】

適應人群 本方案適用于企業中參與產品研發、市場、銷售、項目管理等部門的人員,尤其是負責需求管理工作的相關從業者;致力于提升產品競爭力,對優化需求管理流程、提高產品開發質量感興趣的企業管理者;以及希望了解行業前沿需求管理方法,尋求突破和創新的相關人士。…

米酒的功能和優缺點

米酒&#xff08;又稱甜酒、酒釀&#xff09;是一種以糯米或其他谷物為原料&#xff0c;經發酵制成的傳統發酵飲品&#xff0c;酒精度較低&#xff08;通常1%-10%&#xff09;。以下是其功能、優點及缺點分析&#xff1a; 一、米酒的功能 營養補充 富含B族維生素&#xff08;B1…

注冊登錄頁面項目

關系型數據庫地址&#xff1a;C:\Users\ASUS\AppData\Local\Temp\HuaweiDevEcoStudioDatabases\rdb #注冊頁面register.ets import dataRdb from ohos.data.rdbconst STORE_CONFIG {name: weather4.db } const TABLE_NAME weather_info const SQL_CREATE_TABLE CREATE TAB…

yum源配置文件CentOS-Base.repo完整內容

1.CentOS Yum 源配置文件 CentOS-Base.repo 的完整內容示例&#xff1a; 以下是適用于不同版本 CentOS 系統的 CentOS-Base.repo 文件的標準模板。這些模板基于常見的國內鏡像源&#xff08;如阿里云、清華大學等&#xff09;&#xff0c;可以幫助解決倉庫配置失敗的問題。 適…

深度學習基礎--目標檢測入門簡介

博主簡介&#xff1a;努力學習的22級本科生一枚 &#x1f31f;? 博客主頁&#xff1a;羊小豬~~-CSDN博客 內容簡介&#xff1a;探索AI算法&#xff0c;C&#xff0c;go語言的世界&#xff1b;在迷茫中尋找光芒?&#x1f338;? 往期回顧&#xff1a;yolov5基礎–一步一步教…

雅思寫作--70個高頻表達

文章目錄 1. learn new skills學生通過戶外活動學到很多新技2. take immediate action to do各國采取有效行動以保護環境政府采取了必要行動以減少失業。你應該立即采取行動來解3. communication skills4. grow significantly5. have many advantages1. learn new skills “lea…

深入理解虛擬機與容器:原理、對比與應用場景分析

目錄 前言1 虛擬機技術詳解1.1 虛擬機的基本原理1.2 虛擬機的優勢與局限 2 容器技術詳解2.1 容器的運行機制2.2 容器的優勢與局限 3 虛擬機與容器的核心差異對比3.1 架構對比3.2 啟動速度與資源消耗3.3 安全性與隔離性3.4 兼容性與遷移性 4 實際應用場景分析4.1 適合使用虛擬機…

SQL Server數據庫提權的幾種方法——提權教程

SQL Server數據庫提權的幾種方法——提權教程 一、簡介 在利用系統溢出漏洞沒有效果的情況下,可以采用數據庫進行提權。 數據庫提權的前提條件: 1、服務器開啟數據庫服務 2、獲取到最高權限用戶密碼 (除Access數據庫外,其他數據庫基本都存在數據庫提權的可能) 二、使用x…

【第19節 信息加解密技術】

本章目錄: 一、節概述二、知識詳解1. 信息加密的基本分類2. 對稱加密算法詳解3. 非對稱加密算法詳解4. 密鑰控制技術5. 密鑰分發機制6. 公鑰體系的密鑰管理機制7. 密鑰分類與生成 三、關鍵點提煉四、考試提示五、總結與建議 一、節概述 在信息安全體系中&#xff0c;信息加解密…

記錄搭建自己的應用中心-需求看板搭建

記錄搭建自己的應用中心-需求看板搭建 人員管理新增用戶組織用戶登錄和操作看板狀態看板任務通知任務詳情 人員管理 由于不是所有人都有應用管理權限&#xff0c;所以額外做了一套應用登錄權限&#xff0c;做了一個新的組織人員表&#xff0c;一個登錄賬戶下的所有應用人員共享…

Java從入門到精通 - Java入門

Java 入門 此筆記參考黑馬教程&#xff0c;僅學習使用&#xff0c;如有侵權&#xff0c;聯系必刪 文章目錄 Java 入門01 Java快速入門1. Java 是什么&#xff1f;能干什么&#xff1f;1.1 Java 背景知識1.2 Java 能做什么&#xff1f;1.3 Java 技術體系 2. 如何使用 Java&…

MySQL-排序

介紹 在MySQL中&#xff0c;排序查詢結果可以使用 ORDER BY 子句來實現。這個子句允許你根據一個或多個列進行排序&#xff0c;并且可以選擇升序&#xff08;ASC&#xff09;或者降序&#xff08;DESC&#xff09;的方式。以下是基本的語法結構&#xff1a; SELECT column1, …

當插入排序遇上“凌波微步“——希爾排序的奇幻漂流

文章目錄 一、排序江湖的隱藏高手二、分而治之的魔法1. 核心思想拆解2. 動態演示&#xff08;腦補版&#xff09; 三、C語言實現大揭秘代碼要點解析&#xff1a; 四、性能分析與實戰技巧1. 時間復雜度迷思2. 實測性能對比 五、為什么說它永不過時&#xff1f;六、進階思考題 一…