亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? findpath.cpp

?? visual c++有關圖形圖像和游戲開發的書籍,很經典的vc學習書籍
?? CPP
字號:
// FindPath.cpp: implementation of the CFindPath class.
//
//////////////////////////////////////////////////////////////////////


#include "stdafx.h"
#include "FindAllPath.h"
#include "FindPath.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
ClayData::ClayData()
{
 m_num_data = 0 ;
}
ClayData::~ClayData()
{
if ( m_data != NULL)
delete []m_data ;

if( m_pre != NULL)
delete []m_pre;

}

CFindPath::CFindPath()
{
	m_list = NULL;

}

CFindPath::~CFindPath()
{ 

  //delete []m_list;
  

}

ClayData::ClayData(int lengthpre, int numdata)
{
	m_num_data = numdata ;
   m_data = new int[numdata + 1];
   m_pre = new int [lengthpre + 1];}

BOOL CFindPath::FindPath()
{
  BOOL breturn = FALSE;
  CPathList m_pathList;
  m_list = new CLayList[NUM];
 if (!DealFisrtLay())
	 return FALSE;
  for ( int i = 2 ; i < NUM ; i++)
  {
	  DealLayData(i);
  }

 for ( int j = 1 ; j < NUM ; j++)
 {
	 int k = 0 ;
     k = m_list[j].GetSize();
	 for ( int f = 0 ; f <  k ; f++)
	 {
         ClayData * laydata = m_list[j].GetAt(f);
		 TRACE("%d",laydata->m_num_data);
		 for ( int g = 1 ; g <= laydata->m_num_data ; g++)
		 {
			 if ( laydata->m_data[g] == to)
			 {
				 CPathData * _pathdata = new CPathData(j+1);

				 for ( int l = 1 ; l <= j ; l++)
				 {   
					 _pathdata->data[l-1] = laydata->m_pre[l];
				 }
				 _pathdata->data[j] = to;
                 m_pathList.Add(_pathdata);
			 }
		 }
	 }

 }

  printf("從頂點%d到頂點%d的所有路徑如下:\n",from,to);
 for ( int f = 0 ; f < m_pathList.GetSize(); f++)
 {
    CPathData * _pathData = m_pathList.GetAt(f);
	for ( int l = 0 ; l <  _pathData->PathLength  ; l++)
	{
		printf("%d\t",_pathData->data[l]);
	}
	printf("\n");
	
 }

   ClearList();
 
  return breturn;

}


BOOL CFindPath::DealFisrtLay()
{
	BOOL breturn = FALSE;
    int num = NUM;

	if (num <= 1 )
		breturn = FALSE;
	int length = 0  ;
	int *_data = new int[num+1];

	for ( int j = 1 ; j <= num ; j++)
	{
		if(m_adj(from,j) == 1 )
		{
			length++;
			_data[length] = j ;
		}
	}

	ClayData * _laydata = new ClayData(1,length);
	_laydata->m_pre[1] = from ;

	while(length)
	{
		_laydata->m_data[length] = _data[length];
		length--;
		breturn = TRUE;

	}
	m_list[1].Add(_laydata);

	delete _data; // maybe some error in this line;


  return breturn;

}

BOOL CFindPath::DealLayData(int laynum)
{

 BOOL breturn = FALSE;

 int lastlay = laynum - 1;
 int * _datatemp = new int[NUM];
 int length  = 0;
 for ( int i = 0 ; i < m_list[lastlay].GetSize() ; i++)
 {
	 ClayData * lastlaydata = m_list[lastlay].GetAt(i);
     for ( int j = 1 ; j <= lastlaydata->m_num_data ; j++)
	 {
		 int laythisdata = lastlaydata->m_data[j];
		 length = 0 ;

		 if ( laythisdata != to) //if equ to , don't dealwith
		 {
			 for ( int k = 1 ; k <= NUM ; k++)
			 {
				 if(m_adj(laythisdata,k) == 1 && NotInPreData(k,lastlaydata->m_pre,lastlay)) // if not in data , should add a new laydata
				 {
                       length++;
					   _datatemp[length] = k;
                     
				 }
			 }

			 ClayData * newlaydata = new ClayData ( laynum,length); //should add a new laydata
             int f ; 
             for (  f = 1 ; f <= lastlay ; f++)
			 {
				 newlaydata->m_pre[f] = lastlaydata->m_pre[f];

			 }

			 newlaydata->m_pre[f] = laythisdata ;  // add a new laydata , because of a new lay;

			 for ( f = 1 ;  f <= length ; f++)
			 {
				 newlaydata->m_data[f] = _datatemp[f];
			 }
                 
			 breturn = TRUE;

			 m_list[laynum].Add(newlaydata);
		 }
	 }

 }
delete []_datatemp;

  return breturn;
}

BOOL CFindPath::NotInPreData(int k, int *data, int length)
{
 
	BOOL breturn = TRUE;
 
	for ( int i = 1 ; i <= length ; i++)
	{
		if ( k == data[i] )
		{
			breturn = FALSE;
			break;
		}
	}

  return breturn;
}

void CFindPath::ClearList()
{
 for ( int j = 1 ; j < NUM ; j++)
 {
	 int k = 0 ;
     k = m_list[j].GetSize();
	 for ( int f = 0 ; f <  k ; f++)
	 {
         delete m_list[j].GetAt(f);
		 
	 }
	 m_list[j].RemoveAll();

 }
 delete []m_list;



}

CPathData::CPathData(int length)
{
 PathLength = length;
 data = new int[length];

}

CPathData::~CPathData()
{
 delete [] data;

}

CPathData::CPathData()
{

}

CFindPath::CFindPath(int num)
{
  NUM = num ;
  m_adj.ReSetRowCol(NUM,NUM);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
美女性感视频久久| 国产成人午夜精品5599| 久久人人爽人人爽| 色爱区综合激月婷婷| 久久国产精品色婷婷| 亚洲一级二级三级在线免费观看| 欧美岛国在线观看| 欧美日韩在线电影| 色综合久久中文字幕| 国产精品一区二区x88av| 五月婷婷久久丁香| 亚洲激情成人在线| 中文字幕视频一区| 中文字幕精品一区二区精品绿巨人| 7777精品伊人久久久大香线蕉超级流畅 | 麻豆视频观看网址久久| 亚洲免费毛片网站| 国产精品久久久久久久久久久免费看| 日韩免费看的电影| 777a∨成人精品桃花网| 欧美性生交片4| 99精品欧美一区二区三区小说| 精品一区二区精品| 久久国内精品自在自线400部| 亚洲成av人在线观看| 一区二区三区小说| 亚洲人成亚洲人成在线观看图片| 国产欧美日韩精品在线| 久久先锋资源网| 欧美电视剧在线观看完整版| 欧美一区二区三区人| 欧美人与z0zoxxxx视频| 欧美日韩一区二区三区不卡| 一本色道久久综合狠狠躁的推荐| 99久久精品一区二区| av在线不卡网| av一区二区不卡| 99精品久久久久久| 一本色道久久综合精品竹菊| 日本精品视频一区二区三区| 99久久777色| 色综合久久精品| 欧洲人成人精品| 欧美日韩成人在线一区| 3atv在线一区二区三区| 717成人午夜免费福利电影| 欧美理论片在线| 日韩精品一区二区三区老鸭窝| 欧美变态tickling挠脚心| 欧美va亚洲va在线观看蝴蝶网| 日韩写真欧美这视频| 精品不卡在线视频| 中文字幕电影一区| 亚洲精品欧美激情| 亚洲国产精品久久不卡毛片| 日韩精品一卡二卡三卡四卡无卡| 秋霞影院一区二区| 国产裸体歌舞团一区二区| 成人永久看片免费视频天堂| 成人精品视频一区二区三区| 99久久久久免费精品国产| 欧美三级视频在线观看| 欧美一区2区视频在线观看| 精品日韩在线观看| 亚洲欧美在线另类| 五月婷婷色综合| 国产一区二区女| 一本一本久久a久久精品综合麻豆| 欧美日韩久久久一区| 精品国一区二区三区| 国产精品乱码久久久久久 | 美女任你摸久久| 国产精品亚洲一区二区三区妖精| 成人国产视频在线观看| 欧美日韩亚洲综合在线| 欧美精品一区二区久久久| 亚洲图片激情小说| 日本欧美在线观看| 成人一二三区视频| 欧美猛男男办公室激情| 久久久久久97三级| 亚洲成人av一区二区| 国产精品18久久久| 欧美日韩三级一区二区| 久久久不卡网国产精品二区| 亚洲国产视频一区二区| 国产九色精品成人porny| 欧美中文字幕一二三区视频| 精品成人一区二区三区| 亚洲午夜激情av| 丁香另类激情小说| 欧美一区二区久久| 尤物av一区二区| 国产成a人亚洲精| 日韩视频免费直播| 亚洲一二三四区不卡| 国产精品一品二品| 日韩视频一区二区三区| 一区二区三区国产豹纹内裤在线| 激情综合网最新| 欧美日韩精品一区二区三区四区| 欧美国产激情二区三区| 免费高清在线视频一区·| 97精品久久久久中文字幕 | 国产成人精品免费看| 欧美日本一道本| 亚洲精品国产高清久久伦理二区| 国产一区二区成人久久免费影院| 欧美日本在线观看| 一区二区三区在线不卡| 成人动漫中文字幕| 亚洲精品一区二区三区影院| 亚洲va韩国va欧美va| 色综合久久久网| 国产精品久久久久一区二区三区| 久久99精品久久久久久动态图| 欧美三级中文字幕| 亚洲免费av观看| 成人av午夜电影| 国产精品欧美久久久久一区二区| 久久精品国产在热久久| 884aa四虎影成人精品一区| 一区二区三区中文字幕电影 | 日韩无一区二区| 亚欧色一区w666天堂| 欧美三级电影网| 亚洲综合色噜噜狠狠| 91极品视觉盛宴| 一区二区三区四区五区视频在线观看| 成人99免费视频| 亚洲天堂2014| 在线视频一区二区三区| 亚洲精品国产a| 欧美怡红院视频| 亚洲成av人片在www色猫咪| 色94色欧美sute亚洲线路二 | 精品欧美一区二区久久| 日本免费新一区视频| 日韩欧美国产一区二区三区| 麻豆91在线播放| 久久这里只有精品6| 国内精品自线一区二区三区视频| 日韩精品一区二区三区三区免费| 九九精品一区二区| 久久精品在这里| 99久久99久久综合| 亚洲一区在线免费观看| 欧美视频一区二区在线观看| 亚洲电影激情视频网站| 欧美一级国产精品| 国产麻豆精品一区二区| 中文幕一区二区三区久久蜜桃| 成人黄色电影在线 | 欧美日韩国产另类不卡| 日韩精品午夜视频| 久久蜜桃香蕉精品一区二区三区| 国产a视频精品免费观看| 亚洲欧美福利一区二区| 欧美日韩国产bt| 国产一区二区在线视频| 亚洲国产精品高清| 欧美日韩综合不卡| 精品一区二区免费在线观看| 国产精品免费av| 欧美午夜精品久久久久久孕妇 | 午夜免费欧美电影| 欧美成人vr18sexvr| 不卡av在线网| 午夜不卡av免费| 国产欧美日韩在线看| 在线视频综合导航| 久久国产综合精品| 日韩毛片视频在线看| 91精品国产品国语在线不卡| 国产成人日日夜夜| 亚洲一区二区高清| 久久久91精品国产一区二区三区| 91久久精品国产91性色tv| 精品一区二区在线免费观看| 国产精品情趣视频| 91精品国产免费| 99麻豆久久久国产精品免费优播| 午夜精品一区二区三区免费视频 | 一色桃子久久精品亚洲| 91精品婷婷国产综合久久竹菊| 国产精品99久久久久久久女警| 一区二区三区在线高清| 久久久亚洲国产美女国产盗摄| 欧美在线视频日韩| 国产成人亚洲综合a∨婷婷| 亚洲自拍都市欧美小说| 欧美经典一区二区| 这里只有精品99re| 色八戒一区二区三区| 国产麻豆精品视频| 日韩高清在线一区| 亚洲欧美成人一区二区三区| 久久久久久亚洲综合| 制服丝袜中文字幕一区| 972aa.com艺术欧美|