خوب من یک مثال فرستادم . طبق اون پیش میریم .
ما توی این الگوریتم یک راس رو در نظر میگیریم و از اون به سایر رئوس الگوریتم رو پیاده سازی میکنیم که اینجا a رو گرفته .
مرحله اول گره هایی که بدون واسطه به گره a وصل شدن رو پیدا میکنیم و مینویسیم و برای بقیه مقدار بی نهایت میزاریم .
که اینجا c رو میبینه با ۴ تا و b رو میبینه با ۱ . بقیه هم که بی نهایت
مرحله ۲ : میایم از بین گره هایی که ملاقات شدن بهینه رو انتخاب میکنیم . یعنی گره b
تو مرحله ۲ حالا راس b به عنوان واسط اضافه شد . یعنی این جمله (( گره a گره .... را میبیند , به واسطه ی گره B ))
حالا میبینیم این بار به واسطه b گره d و e رو میبینه . d رو با ۸ تا و e رو با ۶ تا . گره a گره c رو هم به واسطه b میبینه و هزینش میشه ۳ . میبینیم که بهینه تر از مرجله یک بود که بطور مسنقیم میدید و ۴ بود . پس ۳ جایگزین ۴ میشه .
جالا مرجله ۳ : مینیمم اون گره هایی که ملاقات شده رو انتخاب میکنیم . ( b انتخاب شده تو مرحله قبل )
میشه گره c .
حالا تو مرحله سوم این جمله که (( گره a گره .... را میبیند بواسطه ی (b,c) یا c یا b ))
که اینجا میبینیم گره a گره e رو میبینه از طریق مسیر a به b , bبه c و c به e . درست . میبینیم هزینش میشه ۴ و بهتر از ۶ قبلی هست . پس ۴ جایگزین ۶ میشه .
حالا دوباره مینیمم این جدول انتخاب میشه که گره e هستش .
مرجه ۴ . این جمله (( گره a گره ...... را با واسطه (a,b,c,e) یا a یا b یا c یا e یا ترکیب دوتای اینها یا ۳ تایی اینها میبیند .
حالا میبینیم که a گره d رو از طریق a به b , b به c , c به e , e به d میبینه که هزینش کلا میشه ۷ تا . بهتر از ۸ تا هستش پس ۷ جایگزین ۸ میشه . و همچنین گره f رو میبینه با a به b , b به c , c به e و e به f با ۱۰ تا
این شد دیکسترا
البته به f شونصد تا مسیر داریم ( خصوصاً همه گره ها واسط میتونن باشن . ولی از بین اونا بهینه ترین از نظر هزینه رو پیدا میکنیم . چون اینجا دیگه محدودیت واسط نداریم که از فلان مسیر نشه رفت )