سورس الگوریتم دایجسترا (Dijkstra) به زبان C

dijkstra algorithm in c 7692 تصویر

سورس الگوریتم دایجسترا (Dijkstra) به زبان C

در این بخش سورس الگوریتم دایجسترا (Dijkstra) به زبان C را برای شما آماده کرده ایم که با استفاده از نرم افزار DevC++ نسخه ۵٫۱۱ نوشته شده است. در ادامه می توانید توضیحات، تصاویر و همچنین فیلمی از نحوه اجرا شدن پروژه را مشاهده کنید.

توضیحات پروژه

الگوریتم دایجسترا (Dijkstra) یکی از الگوریتم هایی است که برای پیدا کردن کوتاه ترین مسیر مورد استفاده قرار می گیرد. این الگوریتم توسط دانشمند هلندی به نام ادسخر دیکسترا در سال ۱۹۵۹ میلادی ارائه شده است. در نظریه گراف از این الگوریتم برای پیمایش گراف استفاده می شود. الگوریتم Dijkstra با نام “کوتاه ترین مسیر تک منبع” نیز شناخته می شود.

شما با مشاهده سورس کد این پروژه می توانید چگونگی پیاده سازی الگوریتم دایجسترا در زبان برنامه نویسی C را یاد گرفته و در برنامه های خود از آن استفاده کنید. بعد از اجرا شدن برنامه اطلاعات مورد نیاز از کاربر گرفته شده و کوتاه ترین مسیر بر اساس اطلاعات وارد شده به کاربر نمایش داده می شود.

قسمت های از سورس کد

#include<stdio.h>
#include<conio.h>
#include<process.h>
#include<string.h>
#include<math.h>
#define IN 99
#define N 6
int dijkstra(int cost[][N], int source, int target);
int dijsktra(int cost[][N],int source,int target)
{
} 
main() 
{
    int cost[N][N],i,j,w,ch,co; 
	 int source, target,x,y;
	 printf("\tAlgorithmDIJKSRTRA\n\n");
	// printf("Enter Count Node:");
	// scanf("%d",&N);
	 for(i=1;i< N;i++)
	 for(j=1;j< N;j++)
    cost[i][j] = IN; 
    for(x=1;x< N;x++) 
    { 
		  for(y=x+1;y< N;y++)
        { 
				printf("Enter the weight between node %d and %d: ",x,y);
				scanf("%d",&w);
            cost [x][y] = cost[y][x] = w; 
		  }
        printf("\n"); 
    } 
	 printf("\nEnter The Source:");
	 scanf("%d", &source);
	 printf("\nEnter The target:");
	 scanf("%d", &target);
	 co = dijsktra(cost,source,target);
	 printf("\nShortest Path: %d",co);
}

نوشته سورس الگوریتم دایجسترا (Dijkstra) به زبان C اولین بار در سورس سرا - آموزش برنامه نویسی. پدیدار شد.

درباره نویسنده: administrator

ممکن است دوست داشته باشید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *