非指標版A 演算法 C

2021-10-06 02:55:05 字數 1406 閱讀 7669

#include

#include

#include

#include

using namespace std;

struct po

;const int hiet = 8;

const int withe = 12;

int map[hiet][withe] = ,,,

,,,,

};int setg(int x, int y, int endx, int endy)

bool pan(int x, int y)

int main(int argc, char** ar**)

;int zxdj = 10;

int startx = 1, starty = 1;

int endx = 6, endy = 10;

int ox = 1, oy = 1;

vectors;

po t[hiet][withe];

memset(t, 0, sizeof(t));

po start = ;

t[startx][starty].f_x = startx;

t[startx][starty].f_y = starty;

t[startx][starty].openlist = true;

s.push_back(start);

po d;

while (!s.empty())

else

if (pan(_x, _y))

d = t[_x][_y];

if (d.openlist == false&&d.closelistfalse)

else if (d.openlist == true && d.closelist == false)}}

}if (s.empty())

t[startx][starty].closelist = true;

t[startx][starty].openlist = false;

vector::iterator t1 = s.begin();

for (vector::iterator t2 = s.begin(); t2 != s.end(); t2++)

continue;

}if ((*t1).f > (*t2).f)

}if (!s.empty())

}while (startx!=ox||starty!=oy)

for (int i = 0; i < hiet; i++)

cout << endl;

}system(「pause」);

return 0;

}//這是前篇的改進版,前篇用指標釋放太麻煩了,容易洩露,所以改進了下,不懂的可以問我,我這有錯的可以跟我說下,我是真心想分享我的學習經驗.

常用演算法(C版)

演算法 algorithm 計算機解題的基本思想方法和步驟。演算法的描述 是對要解決乙個問題或要完成一項任務所採取的方法和步驟的描述,包括需要什麼資料 輸入什麼資料 輸出什麼結果 採用什麼結構 使用什麼語句以及如何安排這些語句等。通常使用自然語言 結構化流程圖 偽 等來描述演算法。一 計數 求和 求...

KMP演算法 C 版

static void buildtable string substring,ref int next else 查詢演算法 要搜尋的字串 子串 子串在source字串中的開始位置 static int kmpsearch string source,string substring int i ...

c 非可變序列演算法

非可變序列演算法 就是不會改變容器內容的演算法。使用演算法要包含 include標頭檔案。adjacent find first,last 和count first,last,element 查詢相鄰的重複元素,並計算相同元素的個數 include include includeusing name...