Описание тега backtracking
Отслеживание с возвратом - это общий алгоритм поиска решений некоторой вычислительной проблемы, который постепенно создает кандидатов для решений.
2
ответа
Пролог GNU - оператор Univ? Объяснение этого
Итак, унив оператор. Я не совсем понимаю это. Например это: foo(PredList,[H|_]) :- bar(PredList,H). foo(PredList,[_|T]) :- foo(PredList,T),!. bar([H|_],Item) :- G =.. [H,Item],G. bar([_|T],Item) :- bar(T,Item). Что это делает? Это выглядит, чтобы ув…
09 ноя '10 в 00:41
4
ответа
Как я могу остановить этот возврат без использования System.exit(0)?
static void LasVegas(int []tablero, int f, int ultimaReina){ HashSet<Integer> enterosUsados = new HashSet<Integer>(); if (ultimaReina!=-1) enterosUsados.add(ultimaReina); if ((ultimaReina-1) >=0){enterosUsados.add(ultimaReina-1);} if …
13 июн '11 в 01:01
1
ответ
InputMismatchException в алгоритме возврата
Я пытаюсь найти, сколько раз человек повторяет данное имя в матрице, но у меня есть это InputMismatchException, которое я не могу исправить. Я предполагаю, что проблема от переменной сканера, но я могу понять, в чем проблема. private static char[][]…
19 окт '15 в 15:04
6
ответов
Рекурсивное решение для генератора судоку
Я пытаюсь написать алгоритм, который создает легальную доску судоку на Java или Javascript. Ни одна из них не работает, и я не совсем уверен, почему. По сути, проблема в обеих программах заключается в том, что x или y увеличиваются больше, чем должн…
31 мар '12 в 19:55
1
ответ
Почему следующий код выдает ошибку времени выполнения, даже если он показывает желаемый результат?
Я решаю проблему 8 ферзей, используя возврат. Когда я скомпилировал следующий код в IDE codechef, он показал правильный вывод, но все равно он показывает ошибку времени выполнения. #include <stdio.h> #include <math.h> int board[8][8] = {…
28 дек '16 в 09:35
2
ответа
Генератор лабиринта в питоне
Я попытался написать идеальный (только одно решение) генератор лабиринта в Python с использованием обратного отслеживания. Прежде всего, мой лабиринт представлен сеткой x*y https://upload.wikimedia.org/wikipedia/commons/thumb/e/e1/Ising_model_5x5_0.…
31 авг '18 в 06:12
4
ответа
PHP REG EXP проблема возврата
Я пытаюсь использовать этот reg exp в PHP в preg_match_all /\d+ (?:<[^>]+>)(?:<[^>]+>)(\S+.*\S+)(?:<[^>]+>)\s*(\S+) (?:L|R)\s*\w* \w*\s*(?:\w+\s*){14}(\d+)\s*(\d)\s*(\d*\xA0*\d{3}\xA0*\d{3})/is Вот пример данных: 38 <A …
04 июл '12 в 02:34
1
ответ
Определение методики построения алгоритма обратного слежения
Я читаю о методике разработки алгоритмов возврата. Это упоминается следующим образом. Откат назад - это уточнение подхода грубой силы, который систематически ищет решение проблемы среди всех доступных вариантов. Он делает это, предполагая, что решен…
02 май '12 в 11:47
1
ответ
Алгоритм поиска пути
Я пытаюсь разработать приложение, которое отображает мой офис (точно так же, как приложение, например, карты Google, показывающее путь от одного места к другому). Из того, что я читал до сих пор, для решения проблемы могут использоваться алгоритмы, …
12 май '15 в 17:16
1
ответ
Построение рандомизированной матрицы без дубликатов, но с фиксированным частичным вводом
Я сталкиваюсь с проблемой построения рандомизированной матрицы, в которой у меня уже частично есть значения (которые должны оставаться фиксированными - так что никакой дальнейшей рандомизации там нет). Посмотрим: Матрица должна быть 10 на 10 n <-…
12 сен '17 в 23:08
1
ответ
N королев в C++ с использованием векторов
У меня проблемы с пониманием возврата назад, я могу концептуально понять, что мы делаем шаг, и тогда, если из этого не может быть найдено никаких решений, мы пробуем следующее решение. Имея это в виду, я пытаюсь решить проблему N Queens, я выясняю в…
02 июл '12 в 07:59
0
ответов
Проверка на наличие диагональных / столбцовых конфликтов в задаче n-queens
Итак, я пытаюсь понять это решение проблемы N-Queens, проблемы размещения n ферзей на n×n шахматной доске таким образом, чтобы две королевы не атаковали друг друга. Цель - это рекурсивный подход к возвращению всех различных решений, учитывая размер …
11 фев '19 в 00:07
2
ответа
Как использовать backtrack для бесконечного увеличения переменной в Прологе
В настоящее время я читаю книгу по Прологу и застрял на одном из заданий. Я должен создать предикат с одним аргументом. Когда этот аргумент является переменной, он вернет следующее с возвратом, и X продолжит увеличиваться без ограничения. Х = 0, Х =…
01 мар '17 в 14:50
1
ответ
Рыцарский тур с использованием стека
Передо мной стоит задача итеративного решения тура Рыцарей с использованием стека для хранения предыдущих ходов, чтобы я мог выскочить, если конь застрял. Моя программа, кажется, делает несколько POPS, но, кажется, никогда не решает загадку. Он испо…
16 фев '15 в 03:39
1
ответ
C++: рекурсивная задвижка
Я понимаю, что этот код может быть немного плотным для чтения, и я пытался адаптировать стандартный алгоритм решения рекурсивных лабиринтов, где все направления пробуются до тех пор, пока не найдено решение, к алгоритму игры "ошеломляющий" это прове…
31 дек '12 в 03:53
1
ответ
Функция Baktracking, которая рассчитывает изменение, превышает максимальную глубину рекурсии
Я пытаюсь написать функцию, которая находит все возможные комбинации монет, которые дают определенную сумму, например, она рассчитывает все возможные способы, чтобы дать изменение на сумму 2 британских фунта из списка достоинств 1p, 2p, 5p,10p,20p,5…
08 июл '13 в 12:29
1
ответ
Алгоритм возврата кроссворда
Я реализую генератор кроссвордов с использованием обратного отслеживания в соответствии с этим алгоритмом: Это мой псевдокод: > solve(words,grid): if words is empty: > if grid.isValudSol(): > return grid > else: > return None for each…
10 фев '17 в 13:04
3
ответа
Найти, можно ли получить строку из матрицы символов
Учитывая матрицу символов и строку, найдите, может ли строка быть получена из матрицы. От каждого символа в матрице мы можем двигаться вверх / вниз / вправо / влево. Например, если матрица [3][4] имеет вид: o f a s l l q w z o w k и строка follow, т…
03 июн '14 в 02:34
2
ответа
Возвращение в хаскелл
Я должен пройти матрицу и сказать, сколько "характерных областей" каждого типа у нее есть. Характеристическая область определяется как зона, в которой элементы значения n или> n являются смежными. Например, с учетом матрицы: 0 1 2 2 0 1 1 2 0 3 0 0 …
12 апр '10 в 16:06
0
ответов
Разбиение множества на K подмножеств с равной суммой
Я собираюсь выполнить упражнение, чтобы разбить множество на K подмножеств с равной суммой. Скажем Input : arr = [2, 1, 4, 5, 6], K = 3 Output : Yes we can divide above array into 3 parts with equal sum as [[2, 4], [1, 5], [6]] Я нашел решение здесь…
29 ноя '17 в 16:49