溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

java中什么是動(dòng)態(tài)規(guī)劃

發(fā)布時(shí)間:2021-04-22 16:51:47 來(lái)源:億速云 閱讀:187 作者:Leah 欄目:編程語(yǔ)言

這篇文章給大家介紹java中什么是動(dòng)態(tài)規(guī)劃,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

java基本數(shù)據(jù)類型有哪些

Java的基本數(shù)據(jù)類型分為:1、整數(shù)類型,用來(lái)表示整數(shù)的數(shù)據(jù)類型。2、浮點(diǎn)類型,用來(lái)表示小數(shù)的數(shù)據(jù)類型。3、字符類型,字符類型的關(guān)鍵字是“char”。4、布爾類型,是表示邏輯值的基本數(shù)據(jù)類型。

1、說(shuō)明

動(dòng)態(tài)規(guī)劃是一種編程原理,可以通過(guò)將非常復(fù)雜的問(wèn)題分成較小的子問(wèn)題來(lái)解決。這個(gè)原則類似于遞歸,但不同于遞歸,每個(gè)不同的子問(wèn)題只能解決一次。

2、使用流程

確定適合上述問(wèn)題的遞歸關(guān)系。

初始存儲(chǔ)器,數(shù)組,矩陣的初始值。

確保當(dāng)我們進(jìn)行遞歸調(diào)用(可以訪問(wèn)子問(wèn)題的答案)時(shí),總是提前解決。

3、實(shí)例

public class dpSolution {  
    static int getValue(int[] values, int rodLength) {
        int[] subSolutions = new int[rodLength + 1];
 
        for (int i = 1; i <= rodLength; i++) {
            int tmpMax = -1;
            for (int j = 0; j < i; j++)
                tmpMax = Math.max(tmpMax, values[j] + subSolutions[i - j - 1]);
            subSolutions[i] = tmpMax;
        }
        return subSolutions[rodLength];
    }
 
    public static void main(String[] args) {
        int[] values = new int[]{3, 7, 1, 3, 9};
        int rodLength = values.length;
 
        System.out.println("Max rod value: " + getValue(values, rodLength));
    }
}

關(guān)于java中什么是動(dòng)態(tài)規(guī)劃就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI