From f30469c6adf497fb78aa686d69441828cdf0fcd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E6=B1=89=E5=8D=BF?= <15176331678@163.com> Date: Mon, 3 Jun 2019 22:07:20 +0800 Subject: [PATCH 1/3] =?UTF-8?q?new=20dir=20=E5=AE=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "Dynamic Program/\345\256\266/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "Dynamic Program/\345\256\266/.keep" diff --git "a/Dynamic Program/\345\256\266/.keep" "b/Dynamic Program/\345\256\266/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From dc92560a45c3e890557f3ed380b843f24883ba9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E6=B1=89=E5=8D=BF?= <15176331678@163.com> Date: Mon, 3 Jun 2019 22:17:06 +0800 Subject: [PATCH 2/3] 300 --- .../\345\256\266/\345\256\266_300.md" | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 "Dynamic Program/\345\256\266/\345\256\266_300.md" diff --git "a/Dynamic Program/\345\256\266/\345\256\266_300.md" "b/Dynamic Program/\345\256\266/\345\256\266_300.md" new file mode 100644 index 0000000..b5a7b3a --- /dev/null +++ "b/Dynamic Program/\345\256\266/\345\256\266_300.md" @@ -0,0 +1,24 @@ +```go +/** + * 作者:家 + * 思路:两次循环每次找到当前位置的前边是不是有比自己小的,小的位置的值+1即可,随时记录最大值。 + * 时间复杂度:O(n^2) + * 空间复杂度:O(n) + */ + func lengthOfLIS(nums []int) int { + l := len(nums) + if l <= 1 {return l} + res := 1 + dp := make([]int,l) + for i:=0;i dp[i] {dp[i] = dp[j]+1} + } + } + if dp[i] > res {res = dp[i]} + } + return res +} +``` \ No newline at end of file -- Gitee From 5cffc4c2c1eea527be4bd95f95f7246c9f0635fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E6=B1=89=E5=8D=BF?= <15176331678@163.com> Date: Mon, 3 Jun 2019 22:19:37 +0800 Subject: [PATCH 3/3] 322 --- .../\345\256\266/\345\256\266_322.md" | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 "Dynamic Program/\345\256\266/\345\256\266_322.md" diff --git "a/Dynamic Program/\345\256\266/\345\256\266_322.md" "b/Dynamic Program/\345\256\266/\345\256\266_322.md" new file mode 100644 index 0000000..3229d0a --- /dev/null +++ "b/Dynamic Program/\345\256\266/\345\256\266_322.md" @@ -0,0 +1,25 @@ +```go +/** + * 作者:家 + * 思路:详细解释可以参照超哥视频。 + * 时间复杂度:O(n^2) + * 空间复杂度:O(n) + */ +func coinChange(coins []int, amount int) int { + dp := make([]int, amount+1) + for v := 1; v <= amount; v++ { + dp[v] = amount + 1 + } + for _, coin := range coins { + for v := coin; v <= amount; v++ { + if dp[v] > dp[v-coin] + 1 { + dp[v] = dp[v-coin] + 1 + } + } + } + if dp[amount] > amount { + return -1 + } + return dp[amount] +} +``` \ No newline at end of file -- Gitee