今天學習了搜尋演算法
比較難也比較麻煩
搜尋演算法是利用計算機的高效能來有目的的窮舉一個問題解空間的部分或所有的可能情況,從而求出問題的解的一種方法。現階段一般有列舉演算法、深度優先搜尋、廣度優先搜尋、A*演算法、回溯演算法、蒙特卡洛樹搜尋、雜湊函式等演算法。在大規模實驗環境中,通常透過在搜尋前,根據條件降低搜尋規模;根據問題的約束條件進行剪枝;利用搜尋過程中的中間解,避免重複計算這幾種方法進行最佳化。
題目一:
設有n個整數的集合{1,2,…,n},從中取出任意r個數進行排列(1<=r<n<=10),試列出所有的排列。