- 博客(3)
- 收藏
- 关注
原创 马踏棋盘问题-回溯法
问题描述:在m行n列的棋盘上有一个中国象棋的马,马走日字且只能向右走。请找到可行路径的条数,使得马从棋盘的左下角(1,1)走到右上角(m,n)。算法思路:由于马只能向右走,所以只有四个方向,用一个数组a存放马可以走的方向,并用step数组记录马走的路径,马每走一步后就判断当前步骤是否合法(test函数),不合法就回退到上一步,然后在走另一个方向,如果合法,就执行下一步(next函数),以此类推,不断回溯,当走到棋盘的右上角时,算法结束,从而找到一条合适的路径,并记录路径的条数。算法输入:马走的方向i(
2021-11-03 17:14:39 3591 3
原创 农夫过河问题(回溯法)
求解农夫过河问题#include<stdio.h>int FamerLocation(int state) //判断农夫的位置{ return (state & 0x08)!=0;}int WolfLocation(int state) //判断狼的位置{ return (state & 0x04)!=0;}int ChickenLocation(int state) //判断鸡的位置{ return (state & 0x02)!=0;}
2021-10-25 21:14:02 1641 1
原创 字符串匹配(C++)
#include <iostream>#include <cstring>using namespace std;int BF( char *a, char *b) { int i = 0; int j = 0; while (i <= strlen(a )- 1 && j <= strlen(b )-1) { if (a [i] == b [j]) { i++; j++; } else { i =
2021-10-15 11:53:52 509
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人