算法---動態規劃(持續更新學習)

1.動態規劃的經典問題

(1)動規基礎:爬樓梯、斐波那契數列
(2)背包問題:0-1背包,多重背包
(3)打家劫舍
(4)股票問題
(5)子序列問題

2.動態規劃的思路流程

(1)dp數據定義和下標的定義
(2)遞推公式
(3)dp數組如何初始化
(4)遍歷順序
(5)打印順序

3.0-1背包

(1)0-1背包,有n種物品,每種物品都只有1個,每個物品有自己的重量和價值,有一個重量為m的背包,問這個背包最多能裝價值為多少的物品。
物品0 1 (重量) 15(價值)
物品1 3 (重量) 40(價值)
物品2 4 (重量) 30(價值)
背包最大重量是4。
裝滿這個背包的最大價值是?
1)dp數組定義和下標定義
dp[i][j],編號下標為[0,i]的物品放進容量為j的背包里。
2)遞推公式
dp[i][j]可以從哪幾個方向推導出來
dp[i-1][j]:不放物品i
dp[i-1][j-weight[i]]+value[i] :放物品i(不放物品i背包的最大價值:背包的容量-放物品i的重量)
dp[i][j]=max(dp[i-1][j],dp[i-1][j-weight[i]+value)
3)dp數組如何初始化
正常的初始化是
在這里插入圖片描述

當背包容量是0的時候,物品0、物品1、物品2都不能放入到背包中。我們假設物品0的重量是2,索引當背包容量是0和背包容量是1的時候物品都放不來,使用前兩列第一行初始化為0。
在這里插入圖片描述

4)遍歷順序
對于二維數組的0-1背包問題,可以顛倒兩個for循環的順序,先遍歷背包和先遍歷物品都是沒差別的。因為取一個元素,當前元素都是由正上方和左上方推導出來。
5)打印順序

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

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

相關文章

迅睿CMS自定義網站表單:HTML方式調用Select下拉選項數據指南

在迅睿CMS中,當我們需要自定義網站表單并希望以HTML方式調用select下拉選項數據時(而非使用系統默認的{$myfield}、{$diyfield}或{$sysfield}模板變量),可以采用以下方法實現。 問題背景 默認情況下,迅睿CMS表單字段通…

k8s--efk日志收集

目錄 環境準備 下載efk軟件包 下載 nfs 設置nfs開機自啟 創建共享存儲目錄 配置共享目錄文件 加載nfs 使共享目錄生效 查看 node節點驗證 共享目錄配置成功 進入efk配置文件目錄 修改deployment.yaml文件 修改為master主節點ip 修改為nfs共享存儲目錄 修改 kibana …

數值分析——算法的穩定性

由于計算時,誤差會有累積,如果是長時間的計算,就會影響最后得到的結果,因此,需要分析一下誤差的影響能否控制,由此就引出了算法的穩定性 數值的穩定性 對于某一種算法,如果初始值有很小的誤差&a…

解密 Kotlin 中的隱藏調度器:Dispatchers.Main.immediate

在日常的 Android 開發中,我們經常使用協程來處理異步任務。你可能已經熟悉了 Dispatchers.Main、Dispatchers.IO 和 Dispatchers.Default,但今天我要介紹一個不太為人知卻極其有用的調度器:Dispatchers.Main.immediate。 一個令人困惑的現象…

I2C多點觸控驅動開發詳解

I2C多點觸控驅動開發詳解 1. 多點觸控技術概述 1.1 觸控技術發展歷程 觸控技術作為人機交互的重要方式,經歷了從單點觸控到多點觸控的演進過程。早期的電阻式觸控屏只能實現單點觸控,限制了用戶體驗。隨著電容式觸控技術的發展,多點觸控成為可…

UE5提升分辨率和幀率的方法

提問:分辨率大概理解就是是否模糊,幀率大概理解就是是否卡頓對嗎 回答 沒錯,一句話總結: 分辨率主要影響“看起來糊不糊”; 幀率與幀時間穩定性主要影響“順不順”。 如何快速提升UE5的分辨率? 是的&…

小狼毫輸入法中讓數字鍵盤上的數字鍵不再選擇候選詞而是與原始輸入一起直接上屏

使用搜狗輸入法的雙拼時,輸入“womf”然后按下主鍵盤上的數字1,會選擇排名第一的候選詞上屏(大概率是“我們),輸入“womf”然后按下數字鍵盤上的數字1,不會選擇候選詞,而是將輸入文本變成“womf…

【C++】類和對象(終章)

作者主頁:lightqjx 本文專欄:C 目錄 一、構造函數 1. 構造函數體賦值 2. 初始化列表 (1)基本概念 (2)使用特性 3. explicit關鍵字 二、static成員 1. 概念 2. 特性 3. 應用 三、友元 1. 友元函…

水果目標檢測[2]:ALAD-YOLO:一種輕便、精確的蘋果葉病檢測儀

原文: 目錄 摘要: ALAD-YOLO的改進: 1.輕量化主干網絡: 2.改進的 Neck 網絡: 3.改進的 SPP 模塊: 4.注意力機制引入: 實驗結果 數據: 1 數據采集 (Data Collection) 2 數…

Let‘s Encrypt證書自動續期

證書失效后瀏覽器可以看到錯誤提示,以及證書過期時間。 排查服務器證書續期配置 1. 證書未正確安裝或配置 確保在阿里云服務器上部署的 Let’s Encrypt 證書已經正確安裝。你可以通過以下步驟確認: 使用命令 sudo certbot certificates 檢查證書是否正確…

Redis-基數統計、位圖、位域、流

Redis-基數統計、位圖、位域、流一、基數統計 HyperLogLog二、位圖 Bitmap三、位域 Bitfild四、流 Stream一、基數統計 HyperLogLog 基數統計:是用來做基數(不重復的數)統計的算法 (統計不重復出現的數據的個數) 基數統計VS集合 集合: uv …

IBMS-建筑內分散的子系統(如 BA、安防、消防、能源、電梯等)進行數據互聯、功能協同與智能管控

IBMS(Integrated Building Management System,樓宇集成管理系統)并非簡單的 “系統疊加”,而是通過對建筑內分散的子系統(如 BA、安防、消防、能源、電梯等)進行數據互聯、功能協同與智能管控,實…

LabVIEW溫采監控系統

?溫度采集監控系統以LabVIEW 軟件平臺,構建起一套高效、可靠的溫度監測與控制體系。系統可實時采集、顯示、存儲溫度數據,超限時自動報警并執行溫控操作,適用于多類場景,能滿足精準溫控需求,解決傳統系統靈活性差、成…

Docker核心概念與鏡像倉庫操作指南

文章目錄一、名詞概念Docker鏡像Docker鏡像倉庫二、Docker鏡像倉庫常用命令三、容器啟動相關指令Nginxdocker rundocker ps四、綜合實例1.搭建Nginx服務2.Docker hub上創建私有倉庫一、名詞概念 Docker鏡像 Docker 鏡像:是一個只讀的模板,它包含了創建…

科技信息差(8.30)

🌍DeepSeek V3.1 Base突襲上線!擊敗Claude 4編程爆表,全網在蹲R2和V4🎄語音界Sora!微軟剛開源新模型,一次生成90分鐘語音、3200倍壓縮率VibeVoice-1.5B開創了語音界多個重大技術突破:一次性可連…

【國內電子數據取證廠商龍信科技】ES 數據庫重建

我們公司在協助偵辦一起案件現場勘查遇到這樣一個案件,現場沒有 獲取到服務器數據庫密碼,且涉案服務器數據巨大,涉及到的數據庫并不 是 mysql 數據庫,而是 elasticsarch 數據庫,這給我們偵辦案件帶來了極 大的困難&…

【51單片機定時1秒中斷控制流水燈方向】2022-11-14

緣由C語言怎么編可中斷取反流水燈-編程語言-CSDN問答 用P1口做輸出口,接八只發光二極管。編寫程序,使發光二極管循環點亮,循環點亮時間間隔為1秒,該時間間隔用定時器中斷實現。/ INT0 接單次脈沖輸出,每當有外部中斷信…

Megatron-LM(模型并行)

Megatron-LM: Training Multi-Billion Parameter Language Models Using Model Parallelism 1. 技術設計原則 Megatron-LM 提出輕量級層內模型并行,無需定制編譯器或修改框架,僅通過在 PyTorch 原生代碼中插入少量通信操作(如all-reduce&…

C/C++:AddressSanitizer內存檢測工具

AddressSanitizer是gcc自帶的內存檢測工具&#xff0c;無需額外安裝 常見問題 #include <stdlib.h>// 越界訪問 void stack_buffer_overflow() {char buffer[1];int i 10;buffer[i] A; // 訪問越界 }// 野指針 void use_after_free() {char *text (char *)malloc(size…

【源碼】智慧工地系統:智能化施工現場的全新管理方案

智慧工地系統是一個綜合利用物聯網&#xff08;IoT&#xff09;、大數據、云計算、人工智能&#xff08;AI&#xff09;、移動互聯網和BIM&#xff08;建筑信息模型&#xff09;等新一代信息技術&#xff0c;對施工現場的“人、機、料、法、環”等關鍵要素進行實時、全面、智能…