Algorithm design & data structure
6.67K subscribers
1.01K photos
144 videos
175 files
598 links
این کانال برای تمامی علاقه‌مندان به کامپیوتر، مخصوصاً حوزه ساختمان داده‌ها و الگوریتم‌ها، مفید می باشد. آشنایی با ریاضیات مقدماتی، برنامه‌نویسی مقدماتی و پیشرفته و همچنین شی‌گرایی می‌تواند در درک بهتر مفاهیم این درس کمک‌ کند.

👨‍💻Admin👉 @Se_mohamad
Download Telegram
الگوریتم فلوید
در این الگوریتم از روش Dynamic Programming استفاده شده است که این روش از مرتبه n^3 می باشد که از هزینه بسیار کمتری نسبت به الگوریتم عادی آن دارد که اگر به صورت عادی بخواهیم کوتاه ترین مسیر رو پیدا کنیم فاکتوریلی خواهد شد و این اصلا مناسب نخواهد بود.

📣👨‍💻 @AlgorithmDesign_DataStructuer
👨‍💻5
کدام گزینه صحیح می باشد؟
Anonymous Quiz
19%
1
31%
2
42%
3
8%
4
👨‍💻2
جدول هش(Hash Table)
جدول هش یکی از مهم ترین ساختارهای داده است که از یک تابع خاص به نام تابع هش استفاده می کند که یک مقدار داده شده را با یک کلید برای دسترسی سریعتر به عناصر ترسیم می کند.

جدول هش یک ساختار داده ای است که برخی از اطلاعات را ذخیره می کند و اطلاعات اساساً دارای دو جزء اصلی است، یعنی کلید و مقدار. جدول هش را می توان با کمک یک آرایه انجمنی پیاده سازی کرد. کارایی نگاشت بستگی به کارایی تابع هش مورد استفاده برای نگاشت دارد.

به عنوان مثال، فرض کنید مقدار کلید John و مقدار شماره تلفن است، بنابراین وقتی مقدار کلید را در تابع هش به صورت زیر ارسال می کنیم:

Hash(key)= index;

وقتی کلید را در تابع هش پاس می دهیم، ایندکس را می دهد.

Hash(john) = 3;

مثال بالا جان را در شاخص 3 اضافه می کند.

اشکال تابع Hash

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

📣👨‍💻 @AlgorithmDesign_DataStructuer
🙏5👨‍💻1
👍3👨‍💻1
کدام گزینه صحیح می باشد؟
Anonymous Quiz
33%
1
36%
2
15%
3
16%
4
🤔2🎉2👨‍💻2👍1
Radix sort
در این اینجا به الگوریتم مرتب سازی Radix می پردازیم. مرتب‌سازی رادیکس الگوریتم
مرتب‌سازی خطی است که برای اعداد صحیح استفاده می‌شود. در مرتب‌سازی رادیکس، مرتب‌سازی رقم به رقم انجام می‌شود که از کمترین رقم به مهم‌ترین رقم آغاز می‌شود.

فرآیند مرتب‌سازی ریشه‌ای مانند مرتب‌سازی اسامی دانش‌آموزان بر اساس ترتیب حروف الفبا عمل می‌کند. در این مورد، 26 ریشه به دلیل 26 الفبای انگلیسی تشکیل شده است. در پاس اول، اسامی دانش آموزان بر اساس ترتیب صعودی حرف اول نام آنها گروه بندی می شود. پس از آن در پاس دوم نام آنها بر اساس ترتیب صعودی حرف دوم نامشان گروه بندی می شود. و این روند تا زمانی ادامه می یابد که لیست مرتب شده را پیدا کنیم.
کار الگوریتم مرتب سازی Radix
حالا بیایید کار الگوریتم مرتب سازی Radix را ببینیم.

مراحل مورد استفاده در مرتب سازی مرتب سازی ریشه به شرح زیر است:

ابتدا باید بزرگترین عنصر (فرض کنید max) را از آرایه داده شده پیدا کنیم. فرض کنید 'x' تعداد ارقام در حداکثر باشد. 'x' محاسبه می شود زیرا ما باید از مکان های مهم همه عناصر عبور کنیم.
پس از آن، یک به یک از هر مکان مهم عبور کنید. در اینجا، ما باید از هر الگوریتم مرتب‌سازی پایدار برای مرتب‌سازی ارقام هر مکان مهم استفاده کنیم.

در آرایه داده شده، بزرگترین عنصر 736 است که دارای 3 رقم است. بنابراین، حلقه تا سه بار اجرا می شود (یعنی به مکان صدها). این بدان معناست که برای مرتب سازی آرایه سه پاس لازم است.

اکنون، ابتدا عناصر را بر اساس ارقام مکان واحد (یعنی x = 0) مرتب کنید. در اینجا، ما از الگوریتم مرتب سازی شمارش برای مرتب سازی عناصر استفاده می کنیم.

📣👨‍💻 @AlgorithmDesign_DataStructuer
👨‍💻4
🤔2👨‍💻1
کدام گزینه صحیح می باشد؟
Anonymous Quiz
16%
1
29%
2
41%
3
14%
4
👨‍💻1
منظور از Threaded Binary Tree چیست؟

در نمایش پیوندی درختان باینری، بیش از نیمی از فیلدهای پیوند حاوی مقادیر NULL هستند که منجر به هدر رفتن فضای ذخیره سازی می شود. اگر یک درخت باینری از n گره تشکیل شده باشد، n+1 فیلد پیوند حاوی مقادیر NULL است. بنابراین به منظور مدیریت موثر فضا، روشی توسط Perlis و Thornton ابداع شد که در آن پیوندهای NULL با پیوندهای خاصی به نام نخ جایگزین می شوند. این گونه درختان دوتایی با نخ به عنوان درختان دودویی رشته ای شناخته می شوند. هر گره در یک درخت دودویی رشته ای یا حاوی پیوندی به گره فرزند خود یا رشته ای به گره های دیگر در درخت است.


📣👨‍💻 @AlgorithmDesign_DataStructuer
👌4👍1👨‍💻1
👨‍💻4👍2
کدام گزینه صحیح می باشد؟
Anonymous Quiz
13%
1
13%
2
18%
3
56%
4
👨‍💻4🔥2
👨‍💻1
کدام گزینه صحیح می باشد؟
Anonymous Quiz
24%
1
13%
2
23%
3
39%
4
🤔5👍3👨‍💻1
Algorithm design & data structure
Photo
گزینه 4 : نیاز به پیمایش دارد تا آدرس گره ماقبل آخر بدست آیـد کـه مرتبـه آن O(n)می شود.
#پاسخ_تشریحی
👌4👨‍💻1
👨‍💻1
کدام گزینه صحیح می باشد؟
Anonymous Quiz
11%
1
33%
2
37%
3
19%
4
👍4👨‍💻1
👨‍💻2
کدام گزینه صحیح می باشد؟
Anonymous Quiz
22%
1
29%
2
40%
3
10%
4
👍5👨‍💻1