Algorithm design & data structureچ
Kanalga Telegram’da o‘tish
این کانال برای تمامی علاقهمندان به کامپیوتر، مخصوصاً حوزه ساختمان دادهها و الگوریتمها، مفید می باشد. آشنایی با ریاضیات مقدماتی، برنامهنویسی مقدماتی و پیشرفته و همچنین شیگرایی میتواند در درک بهتر مفاهیم این درس کمک کند. 👨💻Admin👉 @Se_mohamad
Ko'proq ko'rsatish6 454
Obunachilar
Ma'lumot yo'q24 soatlar
-77 kun
-4530 kun
Postlar arxiv
شبه کد ضرب دو ماتریس با ابعاد n*n
حال اگر ما دو ماتریس داشته باشیم که با ابعاد زیر باشند:
r1 c1 r2 c2
A=[2,4] B=[4,5]
اگر بخواهیم ماتریس A را در ماتریس B ضرب کنیم ابعاد ماتریس ضرب آن ها به صورت زیر می باشد:
C=[r1,c2]
پس می توان نتیجه گرفت که حتما برای ضرب دو ماتریس یا چندین ماتریس در هم باید c1وr2 با هم برابر باشند تا بتوانیم ماتریس ها رو در هم ضرب کنیم که در واقع شرط ضرب دو ماتریس در هم می باشد.
📣👨💻 @AlgorithmDesign_DataStructuer
گزینه 4 : نیاز به پیمایش دارد تا آدرس گره ماقبل آخر بدست آیـد کـه مرتبـه آن O(n)می شود.
#پاسخ_تشریحی
سلام دوستان عزیز 👋🏻
امیدوارم حال همگی حال دل همگی خوب بوده باشه🤩 و از مطالبی که در کانال گذاشته شده نهایت استفاده رو برده باشید. همان طوری که مییبینید بنده هر روز مطالبی رو در کانال قرار میدم که برای شما مفید می باشد چون همان طور که خودتون هم میدونید این دو درس یعنی طراحی الگوریتم و ساختمان داده درس های تخصصی و بسیار مهم در مهندسی کامیپوتر 💻 می باشند در واقع میشه گفت ❤️ مهندسی کامیپوتر هستن و این دو درس از اهمیت بسیار زیادی در کنکور و ارشد و دکترا بر نقش بسزایی دارید.
📌 بنده یه کانال دیگه زدم و از مطالب های مفید تر که هم برای دانشگاه و هم برای کنکوری که در پیشت دارید رو قرار است داخل اون قرار بدم. 📚✏️
دوستانی که تمایل دارن که عضو بشن و از مطالب نهایت استفاده را بکنند و ما رو هم خوش حال کنند که در رسیدن به موفقعیتشون سهیم بودیم میتونن به ایدی زیر جهت ثبت نام در کانال پیام بدن و از جزوه ها و سوالاتی که گذاشته میشه استفاده کنند. 👇🏻👇🏻👇🏻👇🏻
https://t.me/Se_mohamad
این رو هم بگم کسانی که ثبت نام میکنند میتونید به صورت کاملا رایگان سوالی اگر دارید بپرسید و درک بهتری از مطالب داشته باشند 😉
به زودی فیلم های آموزشی هم قرار میدیم اگر شما با ما هم کاری کنید.
انشالله که همگی موفق باشید ❤️💐
منظور از Threaded Binary Tree چیست؟
در نمایش پیوندی درختان باینری، بیش از نیمی از فیلدهای پیوند حاوی مقادیر NULL هستند که منجر به هدر رفتن فضای ذخیره سازی می شود. اگر یک درخت باینری از n گره تشکیل شده باشد، n+1 فیلد پیوند حاوی مقادیر NULL است. بنابراین به منظور مدیریت موثر فضا، روشی توسط Perlis و Thornton ابداع شد که در آن پیوندهای NULL با پیوندهای خاصی به نام نخ جایگزین می شوند. این گونه درختان دوتایی با نخ به عنوان درختان دودویی رشته ای شناخته می شوند. هر گره در یک درخت دودویی رشته ای یا حاوی پیوندی به گره فرزند خود یا رشته ای به گره های دیگر در درخت است.
📣👨💻 @AlgorithmDesign_DataStructuer
Radix sort
در این اینجا به الگوریتم مرتب سازی Radix می پردازیم. مرتبسازی رادیکس الگوریتم
مرتبسازی خطی است که برای اعداد صحیح استفاده میشود. در مرتبسازی رادیکس، مرتبسازی رقم به رقم انجام میشود که از کمترین رقم به مهمترین رقم آغاز میشود.
فرآیند مرتبسازی ریشهای مانند مرتبسازی اسامی دانشآموزان بر اساس ترتیب حروف الفبا عمل میکند. در این مورد، 26 ریشه به دلیل 26 الفبای انگلیسی تشکیل شده است. در پاس اول، اسامی دانش آموزان بر اساس ترتیب صعودی حرف اول نام آنها گروه بندی می شود. پس از آن در پاس دوم نام آنها بر اساس ترتیب صعودی حرف دوم نامشان گروه بندی می شود. و این روند تا زمانی ادامه می یابد که لیست مرتب شده را پیدا کنیم.
کار الگوریتم مرتب سازی Radix
حالا بیایید کار الگوریتم مرتب سازی Radix را ببینیم.
مراحل مورد استفاده در مرتب سازی مرتب سازی ریشه به شرح زیر است:
ابتدا باید بزرگترین عنصر (فرض کنید max) را از آرایه داده شده پیدا کنیم. فرض کنید 'x' تعداد ارقام در حداکثر باشد. 'x' محاسبه می شود زیرا ما باید از مکان های مهم همه عناصر عبور کنیم.
پس از آن، یک به یک از هر مکان مهم عبور کنید. در اینجا، ما باید از هر الگوریتم مرتبسازی پایدار برای مرتبسازی ارقام هر مکان مهم استفاده کنیم.
در آرایه داده شده، بزرگترین عنصر 736 است که دارای 3 رقم است. بنابراین، حلقه تا سه بار اجرا می شود (یعنی به مکان صدها). این بدان معناست که برای مرتب سازی آرایه سه پاس لازم است.
اکنون، ابتدا عناصر را بر اساس ارقام مکان واحد (یعنی x = 0) مرتب کنید. در اینجا، ما از الگوریتم مرتب سازی شمارش برای مرتب سازی عناصر استفاده می کنیم.
📣👨💻 @AlgorithmDesign_DataStructuer
جدول هش(Hash Table)
جدول هش یکی از مهم ترین ساختارهای داده است که از یک تابع خاص به نام تابع هش استفاده می کند که یک مقدار داده شده را با یک کلید برای دسترسی سریعتر به عناصر ترسیم می کند.
جدول هش یک ساختار داده ای است که برخی از اطلاعات را ذخیره می کند و اطلاعات اساساً دارای دو جزء اصلی است، یعنی کلید و مقدار. جدول هش را می توان با کمک یک آرایه انجمنی پیاده سازی کرد. کارایی نگاشت بستگی به کارایی تابع هش مورد استفاده برای نگاشت دارد.
به عنوان مثال، فرض کنید مقدار کلید John و مقدار شماره تلفن است، بنابراین وقتی مقدار کلید را در تابع هش به صورت زیر ارسال می کنیم:
Hash(key)= index;
وقتی کلید را در تابع هش پاس می دهیم، ایندکس را می دهد.
Hash(john) = 3;
مثال بالا جان را در شاخص 3 اضافه می کند.
اشکال تابع Hash
یک تابع Hash به هر مقدار یک کلید منحصر به فرد اختصاص می دهد. گاهی اوقات جدول هش از یک تابع هش ناقص استفاده می کند که باعث برخورد می شود زیرا تابع هش کلید یکسانی با دو مقدار متفاوت تولید می کند.
📣👨💻 @AlgorithmDesign_DataStructuer
