原创 【算法筆記第9.2節-樹 】問題 A: 復原二叉樹

題目鏈接 題目描述 小明在做數據結構的作業,其中一題是給你一棵二叉樹的前序遍歷和中序遍歷結果,要求你寫出這棵二叉樹的後序遍歷結果。 輸入 輸入包含多組測試數據。每組輸入包含兩個字符串,分別表示二叉樹的前序遍歷和中序遍歷結果。每個字符串由不

原创 python 表格使用

例一 從表格中讀出關鍵字,模擬瀏覽器搜索,將搜索到的關鍵字存入表格指定位置中。 ''' 參考資料:https://www.cnblogs.com/insane-Mr-Li/p/9092619.html https://www.cnblo

原创 問題 B: 算法7-16:弗洛伊德最短路徑算法

問題 B: 算法7-16:弗洛伊德最短路徑算法 時間限制: 1 Sec  內存限制: 32 MB 提交: 169  解決: 99 [提交][狀態][討論版][命題人:外部導入] 題目描述 在帶權有向圖G中,求G中的任意一對頂點間的最短路徑

原创 問題 A: 算法7-15:迪傑斯特拉最短路徑算法

題目描述 在帶權有向圖G中,給定一個源點v,求從v到G中的其餘各頂點的最短路徑問題,叫做單源點的最短路徑問題。 在常用的單源點最短路徑算法中,迪傑斯特拉算法是最爲常用的一種,是一種按照路徑長度遞增的次序產生最短路徑的算法。 可將迪傑斯特拉

原创 【算法筆記第9.8節-哈夫曼編碼】問題 C: 哈夫曼樹(最小帶權路徑長度)

問題 C: 哈夫曼樹 時間限制: 1 Sec  內存限制: 32 MB 提交: 149  解決: 88 [提交][狀態][討論版][命題人:外部導入] 題目描述 哈夫曼樹,第一行輸入一個數n,表示葉結點的個數。需要用這些葉結點生成哈夫曼樹

原创 【算法筆記第11.4節-動態規劃】問題 A: 最長公共子序列

問題 A: 最長公共子序列 時間限制: 1 Sec  內存限制: 32 MB 提交: 335  解決: 185 [提交][狀態][討論版][命題人:外部導入] 題目描述 給你一個序列X和另一個序列Z,當Z中的所有元素都在X中存在,並且在X

原创 【算法筆記第11.5節-動態規劃】問題 A: 【字符串】最長迴文子串

題目鏈接:http://codeup.cn/problem.php?cid=100000629&pid=0 問題 A: 【字符串】最長迴文子串 時間限制: 1 Sec  內存限制: 128 MB 提交: 237  解決: 112 [提交]

原创 【算法筆記第11.3節-動態規劃】問題 A: 最長上升子序列

問題 A: 最長上升子序列 時間限制: 2 Sec  內存限制: 64 MB 提交: 386  解決: 194 [提交][狀態][討論版][命題人:外部導入] 題目描述 一個數列ai如果滿足條件a1 < a2 < ... < aN,那麼它

原创 約瑟夫環的數組實現和鏈表實現

問題描述(OJ題目) 約瑟夫環(約瑟夫問題)是一個數學的應用問題:已知n個人(以編號1,2,3...n分別表示)圍坐在一張圓桌周圍。從編號爲k的人開始報數,數到m的那個人出列;他的下一個人又從1開始報數,數到m的那個人又出列;依此規律重複

原创 【算法筆記第9.7節-堆排序】問題 A: 算法10-10,10-11:堆排序

問題 A: 算法10-10,10-11:堆排序 時間限制: 1 Sec  內存限制: 32 MB 提交: 160  解決: 119 [提交][狀態][討論版][命題人:外部導入] 題目描述 堆排序是一種利用堆結構進行排序的方法,它只需要一

原创 【算法筆記第9.7節-堆排序】問題 C: 合併果子(堆)

題目描述 在一個果園裏,多多已經將所有的果子打了下來,而且按果子的不同種類分成了不同的堆。多多決定把所有的果子合成一堆。     每一次合併,多多可以把兩堆果子合併到一起,消耗的體力等於兩堆果子的重量之和。可以看出,所有的果子經過n-1次

原创 【算法筆記第9.6節-並查集】問題 D: More is better

題目描述 Mr Wang wants some boys to help him with a project. Because the project is rather complex, the more boys come, the

原创 【算法筆記第11.2節-動態規劃】問題 A: 最大連續子序列

問題 A: 最大連續子序列 時間限制: 1 Sec  內存限制: 32 MB 提交: 380  解決: 170 [提交][狀態][討論版][命題人:外部導入] 題目描述 給定K個整數的序列{ N1, N2, ..., NK },其任意連續

原创 【算法筆記第11.1節-動態規劃】問題 A: Fibonacci

問題 A: Fibonacci 時間限制: 1 Sec  內存限制: 32 MB 提交: 557  解決: 187 [提交][狀態][討論版][命題人:外部導入] 題目描述 The Fibonacci Numbers{0,1,1,2,3,

原创 【算法筆記第9.7節-堆排序】問題 B: 序列合併

題目描述 有兩個長度都爲N的序列A和B,在A和B中各取一個數相加可以得到N2個和,求這N2個和中最小的N個。 輸入 第一行一個正整數N(1 <= N <= 100000)。 第二行N個整數Ai,滿足Ai <= Ai+1且Ai <=