آموزش مفاهیم برنامه نویسی به زبان ساده – مبتدی – بخش ششم

مفاهیم برنامه نویسی به زبان ساده - مبتدی (بخش اول)

مبانی و تئوری اولیه گراف ها :

در علوم کامپیوتر گراف ها نقش اساسی را بازی میکنند. به همین علت در این مبحث آن را به اختصار توضیح می دهیم.

به طور کلی گراف ها از دو بخش گره Node و اتصالات یا کمان های متصل کننده Arcs تشکیل شده اند.

برای نمایش هر گره از دایره استفاده میکنند و معمولا هر گره حاوی یک مقدار است مانند شکل زیر.

آموزش مفاهیم برنامه نویسی به زبان ساده - مبتدی - بخش ششم

کمان ها جهت اتصال گره ها به هم به کار میروند. هر کمان میتواند دو گره را به هم متصل کرده از از یک گره به همان گره باز گردد.

آموزش مفاهیم برنامه نویسی به زبان ساده - مبتدی - بخش ششم

در شکل بالا کمان a گره های ۱ و ۳ و کمان b گره های ۱ و۲ را به هم متصل کرده اند. یعنی گره ۱ تنها گره ایست که می تواند گره ۲ و ۳ را به طور مستقیم ببیند. همچنین گره ۳ جهت رسیدن به گره ۲ می بایست از گره ۱ عبور کند. با این فلسفه میتوان بسیاری از مبانی کامپیوتری را توضیح داد.

هر کمان می تواند یک جهت داشته اشد که آن را با فلش نمایش می دهیم. زمانی که ما از یک گره به گره دیگر میرویم و دوباره به آن باز میگردیم یک چرخه به وجود می آید. مثلا در شکل زیر نود آغازین نود شماره ۲ است مه به ۱ یک میرود و پس از آن از نود ۱ به ۳ و دوباره به ۱ برمیگردیم.

آموزش مفاهیم برنامه نویسی به زبان ساده - مبتدی - بخش ششم

همانطور که در قبل گفتیم امکان برگشتن از یک نود به  همان نود وجود دارد. مثلا در مثال زیر یک چرخه از ۱ به ۱ بوجود آمده است.

آموزش مفاهیم برنامه نویسی به زبان ساده - مبتدی - بخش ششم

به این توجه کنید که هر نود میتواند یک نود ورودی یا یک نود خروجی داشته باشد. همچنین نودی که هیچ ورودی نداشته باشد سورس (Source) و نودی که هیچ خروجی ندارد و یک یا چند ورودی دارد را نود انتهایی (Sink)  می گویند.

در شکل بالا نود ۲ سورس و نود ۳ یک نود ته نشین یا انتهایی است. برای دیدن گراف های بیشتر می توانید به سایت  Eric Weisstein’s World of Mathematics رجوع کنید.

ساختارهای درختی (Tree Structures)

یکی از بارزترین گراف ها در دنیای کامپوتر درخت ها می باشند. به دلیل اهمیت زیاد ، در ادامه مبانی اولیه درخت ها و چگونگی چیدمان نود ها را در آن توضیح خواهیم داد.

در کامپیوتر درخت ها معمولا به صورت پایین رونده هستند. به نود آغازین هر درخت ریشه (Root) و به نود های پایانی برگ (Leaf) میگویند. نود های مابین ابتدا و انتها ، نودهای داخلی (Interior) نام دارند.

آموزش مفاهیم برنامه نویسی به زبان ساده - مبتدی - بخش ششم

یک نود میتواند بالاسری یا والد (Parent) چند نود باشد که به نودهای مشتق شده فرزند (Child)  می گوییم. حال اگر هر Parent دقیقا دو Child داشته باشد به این نوع درخت Binary Tree میگویند.

حال چرا درخت ها از اهمیت بالایی برخوردارند؟

از مزایای درخت ها میتوان به ذخیره راحت تر روابط و دسترسی آسانتر به اطلاعات غیر خطی اشاره کرد. در برخی موار حتی ذخیره  داده ها چند بعدی بدون وجود درخت ها امکان پذیر نیست.

به عنوان مثال در شکل زیر فرض کنید Jones سنش ۳۸ سال است و با Brown را می شناسد و Brown دو دوست با نامهای Bailey و Green دارد. با ساختار زیر میتوان روابط این آدم ها با یکدیگر و سنشان را به راحتی ذخیره و بررسی کرد.

آموزش مفاهیم برنامه نویسی به زبان ساده - مبتدی - بخش ششم

ادامه دارد…


آموزش مفاهیم برنامه نویسی به زبان ساده – مبتدی – بخش اول

آموزش مفاهیم برنامه نویسی به زبان ساده – مبتدی – بخش دوم

آموزش مفاهیم برنامه نویسی به زبان ساده – مبتدی – بخش سوم

آموزش مفاهیم برنامه نویسی به زبان ساده – مبتدی – بخش چهارم

آموزش مفاهیم برنامه نویسی به زبان ساده – مبتدی – بخش پنجم

آموزش مفاهیم برنامه نویسی به زبان ساده – مبتدی – بخش ششم

آموزش مفاهیم برنامه نویسی به زبان ساده – مبتدی – بخش هفتم

شرکت ژیوان ارائه دهنده خدمات در زمینه نرم افزار های سفارشی ، طراحی حرفه ای وب سایت