می خوام برنامه رو با روش Astar بنویسم لطفا راهنماییم کنین که چه مراحلی  باید داشته باشه و چه کارهایی باید انجام بشه؟؟برای این روش چه چیزی رو  باید حتما در نظر بگیرم.لطف کردین اگر مرحله به مرحله کارههایی که باید  انجام بشه رو بهم بگین.فقط یک هفته فرصت دارم لطفا دقیق و کامل توضیح بدین.
ممنون.
فرض میکنم A* میدونی چیه چون من خیلی خوب نمیتونم توضیح بدم.
تو این الگوریتم باید بین گره ها تمایز قائل بشی و براساس یه تابعی به گره ها ارزش بدی. پس :

1- فاصله ی منهتن یه گره رو با گره مقصد پیدا کن.
2- تو هر مرحله باید گره ای از لیست انتخاب بشه که منهتن کمتری داره.
3- بهتره از صف اولیت یا همون priority queue استفاده کنی چون اعمال گرفتن مینیمم و اضافه کردن رو توی log n انجام میده. priority queue در واقع همون min heap خودمونه !

پس مثل جستجوی اول سطح عمل میکنی با این تفاوت که به جای اضافه کردن گره به صف اون رو به صف اولویت اضافه میکنی براساس مقدار منهتن اون گره.