91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 3.4MB
    文件類型: .rar
    金幣: 2
    下載: 1 次
    發布日期: 2023-09-27
  • 語言: C/C++
  • 標簽: 十五數碼??A*算法??

資源簡介

課上老師布置的用C++實現A*算法的十五數碼問題,該程序能夠完美運行,并且輸出最佳解路徑。

資源截圖

代碼片段和文件信息

??
#include?“iostream“??
#include?“stdlib.h“??
#include?“conio.h“??
??
#define?size?4??
using?namespace?std;??
??
//定義二維數組來存儲數據表示某一個特定狀態??
typedef?int?status[size][size];??
struct?Springlink;??
??
//定義狀態圖中的結點數據結構??
typedef?struct?Node??
{??
????status?data;//結點所存儲的狀態??
????struct?Node?*parent;//指向結點的父親結點??
????struct?Springlink?*child;//指向結點的后繼結點??
????struct?Node?*next;//指向open或者closed表中的后一個結點??
????int?fvalue;//結點的總的路徑??
????int?gvalue;//結點的實際路徑??
????int?hvalue;//結點的到達目標的苦難程度??
}NNode??*PNode;??
??
??
//定義存儲指向結點后繼結點的指針的地址??
typedef?struct?Springlink??
{??
????struct?Node?*pointData;//指向結點的指針??
????struct?Springlink?*next;//指向兄第結點??
}SPlink??*PSPlink;??
??
??
PNode?open;??
PNode?closed;??
??
??
//開始狀態與目標狀態??
status?startt?=?{5124963813151011140712};??
status?target?=?{1234567891011121314150};??
??
??
//初始化一個空鏈表??
void?initlink(PNode?&Head)??
{??
????Head?=?(PNode)malloc(sizeof(NNode));??
????Head->next?=?NULL;??
}??
??
??
//判斷鏈表是否為空??
bool?isEmpty(PNode?Head)??
{??
????if(Head->next?==?NULL)??
????????return?true;??
????else??
????????return?false;??
}??
??
??
//從鏈表中拿出一個數據??
void?popNode(PNode?&Head??PNode?&FNode)??
{??
????if(isEmpty(Head))??
????{??
????????FNode?=?NULL;??
????????return;??
????}??
????FNode?=?Head->next;??
????Head->next?=?Head->next->next;??
????FNode->next?=?NULL;??
}??
??
??
??
//向結點的最終后繼結點鏈表中添加新的子結點??
void?addSpringNode(PNode?&Head??PNode?newData)??
{??
????PSPlink?newNode?=?(PSPlink)malloc(sizeof(SPlink));??
????newNode->pointData?=?newData;??
????newNode->next?=?Head->child;??
????Head->child?=?newNode;??
}??
??
??
//釋放狀態圖中存放結點后繼結點地址的空間??
void?freeSpringlink(PSPlink?&Head)??
{??
????PSPlink?tmm;??
??
????while(Head?!=?NULL)??
????{??
????????tmm?=?Head;??
????????Head?=?Head->next;??
????????free(tmm);??
????}??
}??
??
??
//釋放open表與closed表中的資源??
void?freelink(PNode?&Head)??
{??
????PNode?tmn;??
??
????tmn?=?Head;??
????Head?=?Head->next;??
????free(tmn);??
??
????while(Head?!=?NULL)??
????{??
????????//首先釋放存放結點后繼結點地址的空間??
????????freeSpringlink(Head->child);??
????????tmn?=?Head;??
????????Head?=?Head->next;??
????????free(tmn);??
????}??
}??
??
??
//向普通鏈表中添加一個結點??
void?addNode(PNode?&Head??PNode?&newNode)??
{??
????newNode->next?=?Head->next;??
????Head->next?=?newNode;??
}??
??
??
//向非遞減排列的鏈表中添加一個結點??
void?addAscNode(PNode?&Head??PNode?&newNode)??
{??
????PNode?P;??
????PNode?Q;??
??
????P?=?Head->next;??
????Q?=?Head;??
????while(P?!=?NULL?&&?P->fvalue?fvalue)??
????{??
????????Q?=?P;??
????????P?=?P->next;??
????}??
????//上面判斷好位置之后,下面就是簡單的插入了??
????newNode->next?=?Q->next;??
????Q->next?=?newNode;??
}??
??
??
//計算結點額h值??
int?computeHValue(PNode?theNode)??
{??
????int?num?=?0;??
??
????for(int?i?=?0?;?i?????{??
????????for(int?j?=?0?;?j?????????{??
????????????if(theNode->data[i][j]?!=?target

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件??????13459??2015-12-19?22:54??AAA\AAA\AAA.cpp

?????文件???????3216??2015-12-13?19:51??AAA\AAA\AAA.vcxproj

?????文件????????941??2015-12-13?19:51??AAA\AAA\AAA.vcxproj.filters

?????文件????????143??2015-12-13?19:51??AAA\AAA\AAA.vcxproj.user

?????文件????????381??2015-12-19?22:54??AAA\AAA\Debug\AAA.exe.intermediate.manifest

?????文件?????????75??2015-12-19?22:54??AAA\AAA\Debug\AAA.lastbuildstate

?????文件???????2320??2015-12-19?22:54??AAA\AAA\Debug\AAA.log

?????文件??????68288??2015-12-19?22:54??AAA\AAA\Debug\AAA.obj

?????文件????????713??2015-12-13?19:51??AAA\AAA\Debug\AAA.vcxprojResolveAssemblyReference.cache

?????文件??????????0??2015-12-13?19:51??AAA\AAA\Debug\AAA.write.1.tlog

?????文件????????568??2015-12-19?22:54??AAA\AAA\Debug\cl.command.1.tlog

?????文件???????5270??2015-12-19?22:54??AAA\AAA\Debug\CL.read.1.tlog

?????文件????????350??2015-12-19?22:54??AAA\AAA\Debug\CL.write.1.tlog

?????文件???????1190??2015-12-19?22:54??AAA\AAA\Debug\link.command.1.tlog

?????文件???????2580??2015-12-19?22:54??AAA\AAA\Debug\link.read.1.tlog

?????文件????????614??2015-12-19?22:54??AAA\AAA\Debug\link.write.1.tlog

?????文件????????444??2015-12-19?22:54??AAA\AAA\Debug\mt.command.1.tlog

?????文件????????648??2015-12-19?22:54??AAA\AAA\Debug\mt.read.1.tlog

?????文件????????276??2015-12-19?22:54??AAA\AAA\Debug\mt.write.1.tlog

?????文件?????207872??2015-12-19?22:54??AAA\AAA\Debug\vc100.idb

?????文件?????241664??2015-12-19?22:54??AAA\AAA\Debug\vc100.pdb

?????文件????5722112??2015-12-21?22:43??AAA\AAA.sdf

?????文件????????876??2015-12-13?19:51??AAA\AAA.sln

????..A..H.?????27648??2015-12-21?22:43??AAA\AAA.suo

?????文件??????43520??2015-12-19?22:54??AAA\Debug\AAA.exe

?????文件?????377044??2015-12-19?22:54??AAA\Debug\AAA.ilk

?????文件?????568320??2015-12-19?22:54??AAA\Debug\AAA.pdb

?????文件???14352384??2015-12-21?22:43??AAA\ipch\aaa-18971181\aaa-113b12ef.ipch

?????目錄??????????0??2015-12-19?22:54??AAA\AAA\Debug

?????目錄??????????0??2015-12-21?22:43??AAA\ipch\aaa-18971181

............此處省略7個文件信息

評論

共有 條評論