backtracking

    1热度

    1回答

    给定一串字,说“OhMy”,保持大写字母固定(不变),但我们可以改变小写字母的位置。输出所有可能的排列。 例如。给予 “OhMy” 应该输出[ “OhMy”, “OyMh”] 这里是我做过什么: public static List<String> Permutation(String s){ List<String> res = new ArrayList<String>();

    -2热度

    1回答

    public class SomeQueens { static Stack<Integer> s= new Stack<Integer>(); static int Solved = 0; static int current = 0; public static int solve(int n) { // n is 8 while(current < n) { //

    0热度

    1回答

    我的任务是使用回溯和递归方法解决迷宫问题。这更多的是关于这个概念的概念性问题。 追溯呼叫是如何到达的?从我所见过的所有例子看,似乎在回溯步骤之前总是调用递归,所以无法达到回溯。任何人都可以向我解释如何回溯步骤?

    0热度

    1回答

    这是我通过使用回溯算法解决数独谜题的程序。该程序将递归调用自身,直到它被解决或无法解决。问题是,当我运行它时,编译器说sudoku_solver.cpp第19行中的sudoku_backtracker()函数调用是不明确的。有人可以向我解释为什么这么说,我该如何解决。如果还有其他问题,我也会很感激帮助。非常感谢。 #include <iostream> #include <string> #i

    -3热度

    1回答

    我的目标是解决一个数独游戏,同时使用回溯算法。当我运行它,我得到这个错误信息: obj/sudoku_solver.o: In function sudoku_backtracker(std::__1::vector<std::__1::vector<int, std::__1::allocator<int> >, std::__1::allocator<std::__1::vector<int,

    -1热度

    1回答

    我试图运行这个程序,但它只运行很长时间,当它应该只需要几秒钟。如果能够获得关于我的代码出现问题以及需要解决的问题,我将不胜感激。 #include <iostream> #include <string> #include <sstream> #include <vector> #include "sudoku_solver.hpp" int main() { std::v

    0热度

    1回答

    我试图做一个程序来解决八皇后问题,但它保持到最后的回报,当它不应该,并试图把它放在一个别的,但它从来没有达到它,即使我最初给它是一个空的堆栈。 同样出于任何原因,我第一次调用top()函数时,它会返回与上次添加的元素不同的元素,但如果我再次调用它,则会返回正确的元素。 所以我想知道问题在哪里? bool search(stack<nodo>& board, int n) { nodo q

    0热度

    2回答

    我正在尝试编写一个解决Sudokus的程序。 我正在使用回溯解决这个难题。 据我所见,我的代码应该可以工作,但显然它没有。 我在代码的不同阶段查看了这个难题,它根本没有改变。 我不知道该怎么做。 下面的代码: public class main { public static int[][] originalGrid; public static void main(Str

    -1热度

    3回答

    我早些时候询问过question,我想我明白了,当我去我的终端代码时,我又一次完全迷失了。我的问题是我有一些数组说[1,2,3,4],我需要找到所有可能的组合,将等于目标值5. 我明白这是一个回溯的方法。我无法像在线那样得到它,很多解决方案都在我头上,我只需要一个简单的解释或者一步一步地追踪一个非常小的数组来可视化发生的事情。 我已经在图书馆度过了最后的12个小时,现在我感到非常沮丧,因为我无法理

    1热度

    1回答

    我已经编写了代码来使用回溯方法从Java中的空白网格生成Sudoku。但是我得到上运行的程序 public class SodokuGenerator { int[][] puzzle=new int[9][9]; int num_givens=0; public static int get_random_value(int high, int low) { //Retur