欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

棧求解迷宮問題

    求迷宮從入口到出口的所有路徑是一個(gè)經(jīng)典的程序設(shè)計(jì)問題。一般的設(shè)計(jì)思想就是從入口出發(fā),順著某個(gè)方向向下探索,探索分為上下左右四個(gè)方位,哪個(gè)方向是通的就將向下走,如果每個(gè)方向都走不下去就進(jìn)行原路“回退”。所以需要一個(gè)后進(jìn)先出的結(jié)構(gòu)來保存從入口到出口的路徑。所以運(yùn)用棧來實(shí)現(xiàn)是非常方便的,沿著某個(gè)方向走,將每個(gè)可通的位置進(jìn)行入棧標(biāo)記,再切換到下個(gè)位置;如果都不通,則棧頂出棧取消標(biāo)記,再尋找。下來呢就實(shí)現(xiàn)一個(gè)簡單的迷宮求解問題(求解出一條通路就好),至于求解多條通路并且求出最短路徑的問題呢我還在進(jìn)一步的學(xué)習(xí)中。

站在用戶的角度思考問題,與客戶深入溝通,找到五原網(wǎng)站設(shè)計(jì)與五原網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都做網(wǎng)站、網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、申請(qǐng)域名、網(wǎng)絡(luò)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋五原地區(qū)。

    在給出代碼之前先來看一下如何動(dòng)態(tài)開辟一個(gè)二維數(shù)組?

int *a = new int[N*N];
int** a=new int*[N];
//a[i][j] 等價(jià)于 a[i*N + j];

    好了,現(xiàn)在來看迷宮的具體實(shí)現(xiàn):

#define _CRT_SECURE_NO_WARNING
#pragma once
#include<iostream>
#include<stack>
#include<assert>
using namespace std;
#define N 10
struct Pos
{
	Pos(size_t row, size_t col)
		:_row(row)
		, _col(col)
	{}
	int _row;
	int _col;
};
void GetMaze(int *a,int n)//讀入文件
{
	FILE* fout = fopen("MazeMap.txt", "r");
	assert(fout);
	for (int i = 0; i < n; i++)
	{
		for (int j = 0; j < n;)
		{
			char ch = fgetc(fout);
			if ('0' == ch || '1' == ch)
			{
				a[i*n + j] = ch - '0';
				j++;
			}
			else
			{
				continue;
			}
		}
	}
	fclose(fout);
}
void PrintMaze(int* a,int n)
{
	for (int i = 0; i < n; i++)
	{
		for (int j = 0; j < n; j++)
		{
			cout << a[i*n + j]<<" ";
		}
		cout << endl;
	}
}
bool CheckIsAccess(int* a, int n, Pos next)
{
	assert(a);
	if ((next._row >= 0) && (next._row < n) && (next._col >= 0) && (next._col < n)&&(a[next._row*n+next._col]==0))
	{
		return true;
	}
	else
	{
		return false;
	}
}
bool MazePath(int* a, int n, const Pos& entry, stack<Pos>& path)
{
	Pos cur = entry;//入口位置
	path.push(cur);
	while (!path.empty())
	{
		//是否已經(jīng)到出口
		if (cur._row == n - 1)
		{
			a[cur._row*n + cur._col] = 2;
			return true;
		}
		a[cur._row*n + cur._col] = 2;

		//*****************************************上
		Pos next = cur;
		next._row--;
		if (CheckIsAccess(a, n, next))
		{
			cur = next;
			path.push(cur);
			continue;
		}

		//*****************************************下
		next = cur;
		next._row++;
		if (CheckIsAccess(a, n, next))
		{
			cur = next;
			path.push(cur);
			continue;
		}

		//*****************************************左
		next = cur;//左
		next._col--;
		if (CheckIsAccess(a, n, next))
		{
			cur = next;
			path.push(cur);
			continue;
		}

		//*****************************************右
		next = cur;
		next._col++;
		if (CheckIsAccess(a, n, next))
		{
			cur = next;
			path.push(cur);
			continue;
		}
		cur = path.top();//到這說明沒有通路,所以棧頂出棧
		path.pop();
	}
	return false;
}
void TestMaze()
{
	int a[N][N] = {};
	GetMaze((int *)a,N);
	PrintMaze((int *)a, N);
	stack<Pos> path;
	Pos entry = { 2, 0 };
	bool ret = MazePath((int *)a, N, entry, path);
	cout << "是否有通路?" << ret << endl;
	PrintMaze((int *)a, N);
}

棧求解迷宮問題

當(dāng)迷宮有多個(gè)出口時(shí),利用全局??梢郧蟮米疃搪窂?。這個(gè)我們下次再議棧求解迷宮問題

文章名稱:棧求解迷宮問題
分享地址:http://aaarwkj.com/article4/jjheoe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、App設(shè)計(jì)、面包屑導(dǎo)航、手機(jī)網(wǎng)站建設(shè)網(wǎng)站設(shè)計(jì)公司、外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)
亚洲精品入口一区二区| 91亚洲精品一区二区三区| 国产高清毛片区1区二区三区| 日韩精品一区二区三区四区在线视频 | 日本少妇熟女一区二区| 香蕉伊蕉伊中文在线视频| 不卡视频一区二区日韩| 要爽死国产一区在线播放| 国产三级精品大乳人妇| 美女少妇性高潮的视频| 老色鬼久久亚洲av综合| 18禁超污网站免费观看| 欧美伊人色综合久久天天| 黄色av福利在线网站| 老色鬼久久亚洲av综合| 国产在线观看一区二区三区精品| 欧美一区日韩二区在线| 亚洲精品老司机福利在线| 亚洲天堂欧美天堂淫人天堂| 亚洲国产视频中文字幕| 亚洲人妻一区二区三区久久精品| 成人性生交视频免费看| 无套内射精品一区二区| 男人天堂av在线资源| 国产精品美女露脸av毛片| 日本a亚洲中文字幕永远| 成人免费在线国产视频| 亚洲av综合色区一区| 夜夜操狠狠操天天摸| 中文字幕人妻日韩在线| 亚洲综合国产一区二区| 成年人免费国产视频网站| 国产亚洲理论片在线观看| 亚洲精品有码在线观看| 亚洲综合福利视频网站| 国产精品大屁股一区二区| 成人精品国产亚洲av| 哈昂~不要啊在线观看| 夜夜草视频在线免费观看| 天堂中文字幕在线乱码一区| 男女性情视频免费大全网站|