深度搜索迷宫2.cpp

来自「这里面是很多经典算法的源代码」· C++ 代码 · 共 64 行

CPP
64
字号
#include<stdio.h>
int maze[8][8]={
					{0,0},
					{0,1,1,1,1,0,1,0},
					{0,0,0,0,1,0,1,0},
					{0,1,0,0,0,0,1,0},
					{0,1,0,1,1,0,1,0},
					{0,1,0,0,0,0,1,1},
					{0,1,0,0,1,0,0,0},
					{0,1,1,1,1,1,0,0}
				};
void out()
{
	int i,j;
	printf("\n\n");
	for(i=0;i<8;i++)
		for(j=0;j<8;j++)
		{
			
			if(maze[i][j]==2)
			{
				printf("*");
			}
			else
			{
				printf("%d",maze[i][j]);
			}
			if(j==7)
			{
				printf("\n");
			}
		}
}

main()
{
	void search(int,int);
	search(0,0);	
}
void search(int i,int j)
{
	maze[i][j]=2;
	if(i==7&&j==7)
	{
		out();
	}
	if(i+1<8&&maze[i+1][j]==0)
	{
		search(i+1,j);
	}
	if(j+1<8&&maze[i][j+1]==0)
	{
		search(i,j+1);
	}
	if(i-1>=0&&maze[i-1][j]==0)
	{
		search(i-1,j);
	}
	if(j-1>=0&&maze[i][j-1]==0)
	{
		search(i,j-1);
	}
	maze[i][j]=3;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?