ADT BinaryTree 的實現及驗證程序采用的主要數據結構:二叉樹、棧、隊算法思想:1、 先序建樹、輸出樹、后序遍歷用遞歸方法。性能分析:O( n )2、 先序遍歷、中序遍歷:性能分析:O( n )(1) 若遇到新節點非空則先入棧,然后訪問其左子樹。(2) 若為空則將棧頂結點出棧,訪問其右子樹。(3) 循環1、2直到棧為空且無節點可入棧。先序與中序的區別是:先序在入棧時訪問節點,中序在出棧時訪問節點。3、 層遍歷:性能分析:O( n )(1) 根節點入隊(2) 節點出隊并訪問(3) 若節點有左孩子,則左孩子入隊;有右孩子,則右孩子入隊。(4) 重復2、3直到隊列為空。4、 線索樹:算法與先序遍歷、中序遍歷一樣,只是將訪問節點的Visit函數改為連接前驅與后繼的操作。性能分析:O(
標簽: BinaryTree ADT 性能分析 樹
上傳時間: 2014-12-20
上傳用戶:SimonQQ
/*數字三角形問題 問題描述: 給定一個由n行數字組成的數字三角形如下圖所示。試設計一個算法,計算出從三角形的頂至底的一條路徑,使該路徑經過的數字總和最大。 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 編程任務: 對于給定的由n行數字組成的數字三角形,編程計算從三角形的頂至底的路徑經過的數字和的最大值
標簽: 數字 三角形 路徑 算法
上傳時間: 2013-12-16
上傳用戶:ccclll
基本算法為:先將1填入第一行中間位置;再依次將2-n方按如下規律填寫://1,填入上個數上一行的右邊位置,如果沒有上一行則轉到最后一行,如果右邊沒有方格//則轉到最左邊的方格。2,如果要填的位置上已經有數,則轉填到它上一個數的下邊方格//3,對于第一行的最后一個數的下一個數應填在該數下邊的空格處
標簽: 算法
上傳時間: 2015-03-16
上傳用戶:hwl453472107
K-均值聚類算法的編程實現。包括逐點聚類和批處理聚類。K-均值聚類的的時間復雜度是n*k*m,其中n為樣本數,k為類別數,m為樣本維數。這個時間復雜度是相當客觀的。因為如果用每秒10億次的計算機對50個樣本采用窮舉法分兩類,尋找最優,列舉一遍約66.7天,分成3類,則要約3500萬年。針對算法局部最優的缺點,本人正在編制模擬退火程序進行改進。希望及早奉給大家,傾聽高手教誨。
標簽: 均值聚類 聚類 算法 批處理
上傳時間: 2015-03-18
上傳用戶:yuanyuan123
實現組合C(M,N)運算,程序結構簡單鮮明,運用遞歸算法,取代流行的數組方式儲存,實現組合運算
標簽: 組合 運算 程序結構 數組
上傳時間: 2013-12-20
上傳用戶:daguda
/** * @author jakcy_wu(wujichun) * * 預測分析--本算法只適用于受周期變化或者波動影響的數據 * 權值移動平均算法 * 本期預測值=(前期值*權數)求和/n * * 默認權值為{1,1,1},取最近3次的平均 * 注意權值和必須=權值集合.length */
標簽: jakcy_wu wujichun author 算法
上傳時間: 2014-01-26
上傳用戶:weiwolkt
改進遺傳算法-郭濤算法做最優化問題很管用,算法的基本思想是 先任意產生n個隨機數,然后從n個數里隨機選擇m個數,再有這m個 數合成一個新數,將這個新數同n個數中間適應值函數值的最差的比較, 如果好的話就取代最差的那個,如果它比最好的還要好的話,則把最好的 也取代。如果比最差的壞,則重新合成一個新數。依次循環下去。 程序的奇妙之處是GA_crossover()函數,產生的新數確實比較好,看看 那位大俠能改進一下,產生比這跟好的數。
標簽: 算法 郭濤算法 隨機數
上傳時間: 2015-04-10
上傳用戶:thuyenvinh
堆棧算法。輸入為整數N,輸出為N的M種輸出。
標簽: 堆棧 算法 整數 輸入
上傳時間: 2015-04-26
上傳用戶:jqy_china
最佳高度問題。 問題描述: 假設有n個任務由K個可并行工作的機器完成。完成任務i需要的時間為t(i)。試設計一個算法找出完成這n個任務的最佳調度,使得完成全部任務的時間最早。
標簽: 并行 機器 算法 調度
上傳時間: 2014-12-07
上傳用戶:Amygdala
最優合并問題 給定K個排好序的序列s1,s2,...,sk,用2 路合并算法將這k個序列合并成一個序列。 假設所采用的2路合并算法合并2個長度分另為m 和n的序列需要m+n-1次比較。試設計一個算法確定合并這個序列的最優合并順序,使所需的總比較次數最少。
標簽: 合并 序列 算法 sk
上傳時間: 2014-11-29
上傳用戶:a3318966
蟲蟲下載站版權所有 京ICP備2021023401號-1