backtracking

    2熱度

    2回答

    我注意到很多的回溯問題有解決的方法有兩種。 一個是返回「無論是必需的名單」,VS,貫穿每個呼叫的「結果」,並追加到它。 返回的缺點是什麼?(它是更少的內存/時間效率)? 示例:要打印所有可能的排列,與第二個排序相比,這種解決方案的效率如何? 對不起,如果這不是合適的論壇問這個問題,我找不到更好的地方。 public List<List<Integer>> perm(int[] nums){

    0熱度

    1回答

    我已經在python中建立了一個數獨求解器回溯算法,只是爲了找出它不起作用。我看了一下互聯網上的例子,發現與我的情況相比,他們所做的只有一件事情不同。我相應地更改了我的代碼,現在我的程序正常工作。 這裏是工作代碼: sudoku = [] next_empty_pos = [0,0] # Check if the number is already used in the given row

    0熱度

    1回答

    我的問題涉及到這個問題https://leetcode.com/problems/combination-sum-iii/discuss/和所有回溯問題。 我的問題是:爲什麼我的代碼(與其他人的答案非常相似)總是比他們的運行時間更長? def combinationSum3(self, k, n): """ :type k: int how many number :

    1熱度

    1回答

    我最近出現了一個求職面試,當時我被問到流行的RAT IN A MAEE問題,其中有一個由2維數組表示的迷宮,分別包含0和1的開放路徑和牆,我們必須打印最短路徑。 我使用回溯解決了問題,並且還打印了所有可能的路徑。 但隨後採訪者提高了韌性水平,並要求我用一種新的條件來解決同一個問題,在這種情況下,老鼠可以絆倒「K」數量的牆,K由用戶輸入。 現在我嘗試了很多,但無法弄清楚如果跳閘K牆被允許,如何找到最

    5熱度

    3回答

    input: max_weight = 550 n = 4 x_i = [120, 175, 250, 150] output: 2 // [[250, 175, 120], [150]] 我的初步印象是,這看起來非常相似,動態規劃硬幣找零/揹包問題,但它不是硬幣改變(這會要求最少數量的權重來確定一個數量),而不是揹包(權重沒有值,它就像我可以有超過1個揹包)。 這個問題是否有一

    1熱度

    1回答

    我在實現函數中的回溯時遇到問題,我覺得我只是需要一點點推動。我有一個代碼打架的問題,我將鏈接here 你需要爬上一個有n個臺階的樓梯,並且你決定通過跳上臺階來獲得一些額外的鍛鍊。一次跳躍最多可以覆蓋k個步驟。返回您可能需要爬上樓梯的所有可能的跳躍順序,排序。 對於n = 4,K = 2,輸出應該是: climbingStaircase(n, k) = [[1, 1, 1, 1], [1, 1, 2

    -1熱度

    2回答

    給出的是三個容器具有不同容量(以升): 答:11 B:8 C:5 的問題是如何許多可能性在那裏分配13升對他們? 我試圖通過列舉他們所有的系統性蠻力,並得出了51種可能性的結果。 有沒有蠻力的另一種方式?而且我的解決方案是否正確? 在此先感謝! :d

    -5熱度

    3回答

    #include <iostream> using namespace std; //defining 9X9 grid. int a[9][9] ={{0,0,3,0,9,2,6,0,0}, {1,0,0,3,0,0,8,0,0}, {0,0,5,0,1,0,0,4,0}, {0,3,0,0,0,0,2,5,8}, {2

    0熱度

    1回答

    問題描述: 返回數組的所有組合。例如有一個數組[1,2,3],其結果是: [] [1] [2] [3] [1, 2] [1, 3] [2, 3] [1, 2, 3] 是的我知道有很多方法可以解決這個問題。但我正試圖用回溯算法來解決它。下面是我的代碼: def p(arr): ret = [] #using visited boolean array to avoid

    0熱度

    1回答

    This problem只是重申hackerrank密碼破解超時是這樣的:給定一串字符串和目標字符串,什麼從給定字符串的所有組合可以結合在一起,以形成目標字符串和不重複的。 例如 串:我們做什麼,我們一定要,因爲我們可以 目標:wedowhatwemustbecausewecan 輸出:我們做什麼,我們必須,因爲我們可以 方法我帶是從目標中刪除每個更長的單詞,直到目標變爲空。如果目標變爲空,那麼只