从hello world到A*算法
唉 我是一只菜鸟,只会hello world.
但两天之间我把自动寻路的A*算法弄出来了,实在是莫名其妙啊。
花费2个小时了解了集合类CList用法。
又花了几个小时
定义了A*算法的数据结构
OpenList //开启列表
CloseList //关闭列表
BlockList //障碍物列表
Start //起点
End //终点
Current //当前点
----------------------------
地图网格
Class Grid
{
int F;
int G;//
int H;//启发值(曼哈顿路径)
int W;//权值
left();
right();
up();
down();
}
花了若干小时
把地图 障碍物 起点 终点初始化
花了一小会儿编写了A*算法
运行---------------哇靠 成功了! 随便放置障碍物,都能从起点找到终点,太神奇啦。
按F5 ------------Memory Leak!->........一大堆。。。。。
内存漏洞怎么办呢? 我每次找临近节点都是new的, 哎呀头痛了3个小时终于想到办法了。
我建了个rubishlist , 每次new我就rubishlist.addtail(node);
最后在析构函数里delete了rubishlist所有元素,然后rubishlist.removeall();
呵呵~算法才是王道,编码只是体力活啊,切记切记!!