Dynamic Programming.

Slides:



Advertisements
Similar presentations
1 曾老師、各位同學大家好 ! 首先自我介紹 ; 個人聯合大學電機系 畢業,服完兩年兵役後, 75 年開始就 業 ; 四年內換了幾個工作, 79 年創立貿 特科技, 90 年、 91 年分別於大陸寧波 與昆山設立特一電子與柏特電子,經 歷 20 年的工作磨鍊,今天事業上算是 穩定、成熟 ! 承蒙曾老師看重,利用一.
Advertisements

颐高集团项目中心 海亮地产开发模式研究报告. 目 录 目 录 第四部分:海亮地产高周转模式执行 第二部分:海亮地产高周转模式原因 第三部分:海亮地产高周转模式内涵 第一部分:海亮地产企业背景 第五部分:海亮地产高周转支撑体系.
中正國中 特教組長 粘玉芳 校內分機 : /02/21. 下列條件擇一: 一、身心障礙手冊 二、特殊教育學生鑑定及就學輔導會證明.
示範課 -- 作文立意. 重溫作文構思課  構思嘗試深化  多角度思考  宜先剖析題目, 運用聯想, 循序漸進擴大範圍, 然後歸納材料, 定訂主題  同學的作品, 反映部分能夠掌握, 主線清晰, 層 層深入, 舉例恰當  但有部分同學只有枝葉, 欠缺主線, 更無中心思 想, 反映立意不足.
幼教人員法律事件探討 ─ 幼兒教育及照顧法 姚其壯 第一章 總則〈第一條至第六條〉 第二章 幼稚園設立及其教保服務 〈第七條至第十四條〉 第三章 幼稚園組織與人員資格及權益 〈第十五條至第二十八條〉 第四章 幼稚權益保障 〈第二十九條至第三十三條〉 第五章 家長之權利與義務 〈第三十四條至第四十條〉
畫面中的兩個人要去參加金融業儲備幹部的面試 活動,你認為誰的面試穿著是正確的? V.S 動動腦 V.S 動動腦 慎重 讓人感到 尊重 輕便 讓人聯想 隨便 畫面中的兩個人要去參加金融業儲備幹部的面試 活動,你認為誰的面試穿著是正確的?
IT 服务与业务发展融合 王维航 北京华胜天成科技股份有限公司 十分钟的悲剧.
高考心理辅导  福建中医药大学  林山  高考是什么?  真有那么 “ 苦大仇深 ” ?  为什么不能是 “ 快乐挑战 ” ?  高考(事) --- 认知(怎么个事 - 压力大小) --- 情绪反应(烦躁、焦虑、害怕 VS 自信、 从容、期盼) --- 行为表现(发挥正常.
蕭文生 中正大學法律系教授兼法學院院長.  壹、前言  貳、司法院釋字第六八四號解釋  參、大學生之受教權  肆、大學自治之範疇  伍、大學生之其他基本權利  陸、救濟管道之改善  柒、結語.
大陸學歷採認相關問題 楊景堯 淡江大學中國大陸研究所. 學歷採認的定義與範圍 廣義的定義 — 承認學歷 狹義的定義 — 具備任職, 任教, 考試資格 範圍 — 高等教育為主 台灣人取得大陸學歷的採認 大陸人取得大陸學歷的採認 外國人取得大陸學歷的採認.
提昇餐廳供餐品質 及服務滿意度 標竿學習主題 標竿學習計劃排定進度 分析客戶對餐廳供餐滿意度偏低原因:
第八課 謝 天. 第八課 謝 天 作者主旨文章作法 民國 陳之藩 謙卑感 恩,功 成不居 以「謝天」的傳統觀念 為中心,經由疑惑、思 索、領悟三個層次的敘 述,賦予新的意義 ★題目含義:表示對很多「人」的感謝。
模仿貓 記敘文 ( 童話 ) 作者: 海倫、波頓 課文朗讀課文朗讀、模仿大賽 作者 美國女畫家,她用藝術家的嚴 肅態度和精神,幫兒童讀繪畫 插圖,並得過許多次獎。她的 作品藝術價值高,有雨本成為 美國美術協會兒童讀物展覽的 入選作品。她常常自寫自畫, 文筆很不錯。
蔬菜大觀園 V.S 大家來種菜 蔬菜的外觀及分類  蔬菜是我們常吃的食物,蔬菜的外觀形狀不 同,有各種不同的顏色、形狀、氣味等,嚐 起來的味道也不相同。  蔬菜的營養價值不盡相同,可實用的部位也 不同,有的是根、有的是莖、有的是葉、有 的是花、有的是果實,還有的是種子。  依據蔬菜種類和食用部位的不同,可以將蔬.
社工之路的通行證 --- 社工師證照 考試心得分享 東吳大學社工系碩一 呂錦綸. 一、考前準備 閱讀主流老師的書籍、掌握各科概要。 閱讀主流老師的書籍、掌握各科概要。 重視概念性的知識,打好基礎是很重要低 ~ 重視概念性的知識,打好基礎是很重要低 ~ 是必備讀物 ! 是必備讀物 ! 勤作考古題,參考當年度碩士班考試及高.
政府的权力:依法行使. 政府的权力:依法行使 重庆“最牛钉子户”事件 九龙坡区法院一名张院长称,法院已组织6次调解,有时1天就有2次调解。3月28日下午,九龙坡区委书记郑洪还专门接待吴苹3小时。1日,在法院组织下,拆迁双方基本达成口头协议,今天下午,双方签字生效。按协议,吴苹选择了异地实物安置方案,开发商将其在沙坪坝开发的一处门面房,按同样面积交付吴苹,吴同意此方案.
第八課 馮諼客孟嘗君 謀職達人 來也.
心理学辅导.
蔬菜大觀園V.S大家來種菜 高雄市楠梓區翠屏國中小教師 林珮如
“腸”保安康 現代人的腸胃保健.
那一段「詩聲戀」的日子 孟令今老師.
獨立國家國協 1.地形 2.氣候 3.產業.
綜合活動領域 教學分享.
诚信人生 ---高二(2)班主题班会.
兩岸融合教育之議題: 以東莞台商子弟學校為例
航向未來 飛揚國際 —關於華航與長榮的財務報表 指導老師: 組員:張甄芸 4A 鄭雅華 4A070079
世界史.
面对苦难 (约翰福音15:18-16:4) 2/22/15 我们不属世界,神从这世界中拣选了我们,却没有为我们另设一处“世外桃源”,乃是让我们住在地上,以他的信实为粮,以他的生命为光。既然在这被罪玷污的世界中,就会有苦难仇恨,然而它们不能打倒我们,因为它们 无目的 无缘故 无胜算 在世上我们虽有苦难,也可以放心,因为耶稣已经胜了世界。
如果你没法阻止战争,那你就把战争的真相告诉世界
102學年度第二學期 208家長座談會 歐陽美慧.
小綠葉蟬的『祕蜜』~ 蜜香烏龍茶.
個人投資理財與策略 富蘭克林:邱良弼.
第六章 中国公务员制度 干部 VS 公务员.
穿越迷雾,读懂全球化经济本质 谈美国次贷危机与人民币升值问题.
教育部 試辦中小學 教師專業發展評鑑基本概念 台中教育大學 徐照麗.
大陸教育基本現況認識 楊景堯 淡江大學中國大陸研究所.
第三章 魏晉南北朝的分合.
移民與文化--鄉愁的想像 王婉甄.
性別平權.
青龙偃月刀 韩少功. 青龙偃月刀 韩少功 走近作者 韩少功,湖南长沙人。1985年倡导“寻根文学”的主将。1996年出版的长篇小说《马桥词典》。比较著名的有《爸爸爸》、《女女女》等。
2008年3月8日 順德聯誼總會何日東小學上午及下午校
彰化基督教醫院 健康檢查科 / 家庭醫學科 吳美鳳醫師
經濟系 在學什麼專業? 經濟學是一門研究人類經濟行為的社會科學 為什麼鑽石會比水貴? 為什麼台灣中央銀行不多印一點台幣, 以增加大家的財富?
葉金源臨床心理師 台南市臨床心理師公會理事長 台南市社區大學生命與健康學程講師 台南縣家庭教育中心審查委員 台南地方法院家事調解委員
公文寫作及實務.
厌讼与好讼:明清诉讼文化面面观 廖华生 江西师范大学历史文化与旅游学院.
解读社会保险.
講題:『你不可不知的禱告』 經文:舊約詩篇90篇 陳文惠傳道
愛的勝利 (羅馬書 8:31-39).
青少年憂鬱症 資料來源: 臺北e大「聆聽憂鬱的心~談憂鬱症」/劉宗憲醫師 台南市憂鬱症關懷協會談青少年憂鬱症/陳信昭醫師
考績制度改革的政策分析 政治大學公共行政學系 博士生 簡鈺珒.
老 子 《道德經》 明代張路 老子騎牛圖.
(以「背影」象徵父愛。 紙船印象:母愛, 作者洪醒夫 負荷:父愛, 作者,吳晟) 第 三 課 背 影 文體:抒情文 朱自清.
中國大陸民辦大學發展現況 楊景堯 淡江大學中國大陸研究所.
莊子思想 vs. 存在主義 M111甲孝 陳昕慧  指導老師:李開濟教授.
護教裡的情與義 細說基督教與 天主教的「原來分別」.
理學大師周敦頤 ※原名敦實,因避宋英宗諱改名敦頤,字茂叔 。道州營道(今湖南道縣)人。
系统简介 理财顾问 业务 是基于通信平台的技术优势,整合《理财周刊》、第一理财网、乾隆集团等合作伙伴提供的理财产品内容和权威的理财专家资源,以集中式呼叫中心为主的服务方式,让普通百姓可以享受到快捷、全面、专业、权威的资讯及投资理财的服务平台。
请说出牛顿第一定律的内容。.
宦官那些事儿 宦官那些事儿 主讲:小学部李永善 主讲:小学部李永善.
电视教育课 【5】 小学生行为习惯养成教育.
宁波爱地房产市场年报 郊五区
邁向頂尖大學計畫研究及延攬人才組 (研發處學術發展組) 103年度重點業務推展
奈米溶膠發展的背景介紹 忠信科技 陳忠詰.
摩擦力.
小太陽兒童人文藝術學院兒童畫展 地點:住院大樓9F、11F外走道( )
2-3 數學歸納法 歸納法 歸納臆測 數學歸納法.
團體衛生教育護理創意競賽 報告者:護理科 計畫主持人邱馨誼講師
動態規劃 Dynamic Programming (DP)
Advanced Competitive Programming
Presentation transcript:

Dynamic Programming

DP 是什麼? Dynamic是“動態的” DP中文叫做“動態規劃” 類似遞迴的寫作方式 基本概念就是建表 用舊的資料表格求出新的資料,將新的資料放入表格中,再用該表格求更新的資料。 DP會將跑出來的資料儲存,遞回不會儲存資料。

DP 怎麼做? 實做DP的時候,就像我們前面說的,首先會建立一個table來儲存跑出來的資料。 我們要利用先前的小資料求之後的大資料。 Table Element Definition很重要的一點就是定義好資料的存放方式及位置,使的我們需要的時候更容易找到想要的資料。 好的Table更能讓coding變簡單,並減少空間浪費。

再講下去連我都睡著了… 所以直接來個例子吧

DP 的應用 - 費氏數列 0 1 1 2 3 5 8 13…很眼熟吧 費氏數列定義: 第n項 = n-1項+n-2項 寫成運算式就是: f(n) = f(n-1) + f(n-2) f(0) = 0; f(1) = 1; 之前遞迴也有用到這個舉例,現在可以用這個題目看看遞迴跟DP的不同。

DP 的應用 - 費氏數列 大家還記得遞迴吧?遞迴的作法是: 那DP呢? f(10) = f(9)+f(8)….執行f(9)跟f(8) f(2)=f(1)+f(0)…f(2) = 1 存入table f(3)=f(2)+f(1)…f(3) = 2 存入table …DP則是由f(0)開始往上找的

DP 費氏數列過程實做 1 5 8 13 21 f(0) =0; f(1) =1; f(2) = f(1)+f(0) = 1 + 0 = 1 1 5 8 13 21 f(0) =0; f(1) =1; f(2) = f(1)+f(0) = 1 + 0 = 1 f(3) = f(2)+f(1) = 1 + 1 = 2 f(4) = f(3)+f(2) = 2 + 1 = 3 … f(9) = f(8)+f(7) = 21 + 13 = 34 f(10) = f(9)+f(8) = 34 + 21 = 55

DP 優點 - 執行效率 剛剛的f(10)執行完之後 我們接著想求f(6)跟f(11)… 5 8 13 21 34 55 8 f(6) = 89

DP V.S. 遞迴 遞迴是由上往下(top-down)的思考方式 遞迴的優點: 遞迴的缺點: 節省記憶體空間,想法比較簡單 不斷呼叫自己的作法相當花時間,每次都要從頭執行 呼叫自己的時候會使用到stack memory,若呼叫太多次stack memory滿了,就會出現錯誤

DP V.S. 遞迴 DP是由下而上(bottom-up)的方法。 DP的優點: DP的缺點: 執行效率比遞迴好!! 若題目沒有先給定最大範圍就無法預先建表 如果題目給的範圍太大記憶體不足也無法處理 過程的思考比較困難

DP 應用的重點!!! 計算順序很重要: 因為也會用到迴圈,所以要設定好起始值跟終止條件。 為了求出之後需要的大資料我們一定要先算出之前的小資料,在依序往上做。 因為也會用到迴圈,所以要設定好起始值跟終止條件。 記得要運用到table所存取的資料,不要每次都從頭做起,否則就失去DP的意義了。

比較完了優缺點 趕緊再來看個例子囉!!

DP 的應用 - Tiling Tiling,就是堆積木。題目給了一些指定大小形狀的積木,然後問要組成指定大小形狀的圖形有幾種作法。 這裡用ACM10359為例子。 題目: 你現在有以下的積木,要組出2*n的圖形,有幾種排法?

DP 的應用 - Tiling 什麼意思??舉個例子吧: 當n=1 只有一種→ n=2 有三種→ n=3 有五種→

DP 的應用 – Tiling 我們現在要拼成2*n的積木 我們可以往下討論,2*n的積木要用2*(n-1)的積木跟哪些其他的積木組成呢?? 答案很明顯是:

DP 的應用 – Tiling 接下來討論2*(n-2): 所以2*(n-2)總共有兩組新的 那2*(n-3)呢?

DP 的應用 – Tiling 2*(n-4),2*(n-5)…等狀況都會在2*(n-1)和2*(n-2)中討論了,所以我們需要討論的就是以下三種狀況: 所以我們得到公式: F(n) = F(n-1) + 2*F(n-2) 只要使用這個公式就可以求出我們要的2*n的排法了!!

DP 的應用 - LIS LIS = Longest Increasing Subsequence 中國人都叫他“最長遞增部分序列” 1 4 6 10 22 45 這就是一個遞增序列 1 13 24 5 7 9 這就不是一個遞增序列,但它其中有1 5 7 9存在。 題目通常會任意給一個字串,我們要從中找出最長的遞增部分序列及長度。

DP 的應用 - LIS N 1 2 3 4 5 6 7 8 Data[n] 9 12 25 33 length

DP 的應用 - LIS N 1 2 3 4 5 6 7 8 Data[n] 9 12 25 33 length

DP 的應用 - LIS N 1 2 3 4 5 6 7 8 Data[n] 9 12 25 33 length

DP 的應用 - LIS N 1 2 3 4 5 6 7 8 Data[n] 9 12 25 33 length

DP 的應用 - LIS N 1 2 3 4 5 6 7 8 Data[n] 9 12 25 33 length

DP 的應用 - LIS N 1 2 3 4 5 6 7 8 Data[n] 12 25 33 length

DP 的應用 - LIS N 1 2 3 4 5 6 7 8 Data[n] 9 12 25 33 length

DP 的應用 - LIS N 1 2 3 4 5 6 7 8 Data[n] 9 12 25 33 length

DP 的應用 - LIS N 1 2 3 4 5 6 7 8 Data[n] 9 12 25 33 length

DP 的應用 - LIS N 1 2 3 4 5 6 7 8 Data[n] 9 12 25 33 length 1 2 3 4 5 6 7 8 Data[n] 9 12 25 33 length 所以我們得知最暢遞增部分序列的長度就是6

DP 的應用 - LIS 那我們要怎麼找這個LIS長怎樣呢? N 1 2 3 4 5 6 7 8 Data[n] 9 12 25 33 1 2 3 4 5 6 7 8 Data[n] 9 12 25 33 length 方法:建立一個長度同剛剛算出來的LIS的陣列,然後從最後開始往前跑。 從length=6的8開始往回找,每次找到後,目標的length就減一。 從右邊開始用這種遞減的方式把資料存入陣列中。

DP 的應用 - LIS N 1 2 3 4 5 6 7 8 Data[n] 9 12 25 33 length N+1 1 2 3 4 5 1 2 3 4 5 6 7 8 Data[n] 9 12 25 33 length N+1 1 2 3 4 5 6 LIS[n] 7 9 12 25 33

練習題 費氏數列(需用大數) 495 堆積木(需用大數) 10359 10918 LIS 497