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

👨‍💻Admin👉 @Se_mohamad
Download Telegram
Complexity-lec-ad-s20.pptx
1.6 MB
💡 پیچیدگی زمانی کد - رازهای بهینه‌سازی الگوریتم‌ها 💡

📚 در دنیای برنامه‌نویسی، زمان همه‌چیز است. هر خط کد می‌تواند تفاوتی بزرگ ایجاد کند! وقتی صحبت از بهینه‌سازی کد می‌شود، پیچیدگی زمانی الگوریتم‌ها به میدان می‌آید. این مفهوم به ما کمک می‌کند تا بفهمیم که یک الگوریتم در مواجهه با داده‌های بزرگ، چگونه عمل می‌کند.

🌟 در جزوه پیچیدگی زمانی کد، یاد می‌گیریم که چگونه بهترین الگوریتم‌ها را انتخاب و بهینه‌سازی کنیم تا در کمترین زمان ممکن به بهترین نتایج دست یابیم. از O(1) تا O(n!)، هر کدام داستانی دارند که باید کشف کنیم.

📊 اگر می‌خواهید کد شما مانند یک نینجا سریع و کارآمد باشد، حتماً این جزوه را مطالعه کنید! 📝

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
🔍 تبدیل کانولوشن در بینایی کامپیوتری 🔍

📸 کانولوشن با کرنل (یا فیلتر) نه تنها در شبکه‌های عصبی پیچشی (CNNs) استفاده می‌شود، بلکه یکی از عناصر کلیدی بسیاری از الگوریتم‌های بینایی کامپیوتری نیز می‌باشد. در این فرآیند، یک ماتریس کوچک از اعداد (کرنل یا فیلتر) را بر روی تصویر خود اعمال می‌کنیم و آن را بر اساس مقادیر فیلتر تغییر می‌دهیم.

📊 مقادیر نقشه ویژگی‌های خروجی بر اساس فرمول زیر محاسبه می‌شوند که در آن تصویر ورودی با ( f ) و کرنل با ( h )نمایش داده می‌شوند. شاخص‌های سطرها و ستون‌های ماتریس نتیجه به ترتیب با ( m ) و ( n ) نشان داده می‌شوند:

G[m,n] = (f*h)[m,n] = ∑ j ∑ k h[j, k] f[m-j, n-k]

🖼 به زبان ساده، کانولوشن به ما کمک می‌کند تا ویژگی‌های مهم تصویر را استخراج کنیم و بینش بهتری از محتوای آن بدست آوریم.

📚 اگر به بینایی کامپیوتری و پردازش تصویر علاقه‌مندید، این مفهوم را از دست ندهید!

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍6
🔹Divide and Conquer تقسیم و غلبه 🔹

روش Divide and Conquer (تقسیم و غلبه) یکی از تکنیک‌های اساسی و پرکاربرد در طراحی الگوریتم‌ها و ساختمان داده‌ها است. این روش به حل مسائل پیچیده با تقسیم آنها به زیرمسائل کوچکتر و ساده‌تر می‌پردازد. فرآیند کلی این تکنیک به سه مرحله اصلی تقسیم می‌شود:

1. تقسیم (Divide): مسئله اصلی به چند زیرمسئله کوچکتر تقسیم می‌شود که همگی نسخه‌های کوچکتری از مسئله اصلی هستند.
2. غلبه (Conquer): هر یک از زیرمسائل به طور مستقل حل می‌شوند. اگر زیرمسائل به اندازه کافی کوچک باشند، به صورت مستقیم حل می‌شوند؛ در غیر این صورت، به طور بازگشتی به همان روش تقسیم می‌شوند.
3. ترکیب (Combine): نتایج حاصل از حل زیرمسائل ترکیب شده و راه‌حل نهایی مسئله اصلی بدست می‌آید.

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍2🔥1
Aritificial-Intelidence.rar
196.3 MB
🔹 دوره هوش مصنوعی با اسلایدهای ترجمه‌شده دانشگاه California, Berkeley در دانشگاه ایلام 🔹

👨‍🏫 مدرس: دکتر مظفر بگ محمدی

دانشگاه ایلام با افتخار اسلایدهای دوره‌های هوش مصنوعی دانشگاه معتبر کالیفرنیا، برکلی را ترجمه و در دوره‌های آموزشی خود به کار گرفته است. این دوره‌ها توسط دکتر مظفر بگ محمدی، استاد برجسته دانشگاه ایلام، تدریس می‌شوند.

🔗 لینک آموزش هوش مصنوعی

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍4😍2
This media is not supported in your browser
VIEW IN TELEGRAM
الگوریتم بلمن-فورد
الگوریتم بلمن-فورد یک روش معروف برای پیدا کردن کوتاه‌ترین مسیرها در گراف‌های وزن‌دار است. برخلاف الگوریتم دیکسترا، بلمن-فورد می‌تواند وزن‌های منفی را مدیریت کند و حلقه‌های منفی را تشخیص دهد.

نکات کلیدی:
مقداردهی اولیه: شروع با فاصله بی‌نهایت برای همه رأس‌ها و صفر برای رأس مبدأ.
به‌روزرسانی (Relaxation): در V-1 مرحله، همه یال‌ها بررسی و فاصله‌ها به‌روزرسانی می‌شوند.
تشخیص حلقه‌های منفی: در پایان، بررسی مجدد یال‌ها برای تشخیص حلقه‌های منفی.
کاربردها:
- پیدا کردن کوتاه‌ترین مسیرها در گراف‌های وزن‌دار با وزن‌های منفی
- تشخیص حلقه‌های منفی در گراف‌ها

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍2
@AlgorithmDesign_DataStructuer.pdf
6.2 MB
یه چیت‌شیت عالی برای یادگیری ماشین که مفاهیم کلیدی زیادی رو پوشش می‌ده! 🤖

این چیت‌شیت شامل موضوعات مهمی مثل نظریه بیز، مبادله بایاس و واریانس، تنظیم، دسته‌بندی داده‌های نامتوازن، انواع رگرسیون، ساختارهای داده، و شبکه‌های عصبی پیچشی می‌شه. 📚

همچنین نکات کاربردی برای مصاحبه‌های کاری رو هم ارائه می‌ده. با اینکه صفحاتش کم هستن، ولی پر از اطلاعات مفید و کاربردی هست. 🚀

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👌4👍1
This media is not supported in your browser
VIEW IN TELEGRAM
الگوریتم جستجوی هزینه یکنواخت (Uniform Cost Search - UCS). 🌐

🧩 چی هست UCS؟
الگوریتم UCS برای پیدا کردن کوتاه‌ترین مسیر در گراف‌ها استفاده میشه، جایی که هر لبه هزینه متفاوتی داره.

🛠 مراحل اجرای الگوریتم UCS:
1. شروع از گره مبدأ: الگوریتم از گره مبدأ با هزینه صفر شروع می‌کنه و اون رو به صف اولویت (Priority Queue) اضافه می‌کنه.
2. تکرار تا زمانی که صف اولویت خالی نباشه:
- گره‌ای که کمترین هزینه رو داره از صف اولویت خارج می‌شه.
- اگر این گره همون گره مقصد باشه، مسیر پیدا شده و الگوریتم خاتمه می‌یابد.
- در غیر این صورت، تمام همسایه‌های این گره بررسی می‌شن و هزینه رسیدن به هر همسایه محاسبه می‌شه.
3. ادامه تا پیدا کردن مقصد: این مراحل تکرار می‌شن تا زمانی که به گره مقصد برسیم یا صف اولویت خالی بشه.

🔍 خصوصیات الگوریتم UCS:
- کامل بودن: اگر مسیر به مقصد وجود داشته باشه، UCS حتماً اون رو پیدا می‌کنه.
- بهینه بودن: UCS همیشه کوتاه‌ترین مسیر (کمترین هزینه) رو پیدا می‌کنه.

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍5
growth.pdf
645.5 KB
🚀 رشد توابع یکی از مسائل مهم در ساختمان داده است. 📊 فایل پی‌دی‌اف پیوست با استفاده از حد، رشد برخی از توابع را اثبات می‌کند و نشان می‌دهد کدام توابع رشد بیشتری دارند. 🔍📈

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍5
🎓 دانشگاه تهران دوره‌ای با عنوان مدل‌های ترنسفورمر و دیفیوژن برگزار می‌کند! این دوره در دانشکده ریاضی، آمار و علوم کامپیوتر دانشگاه تهران برگزار می‌شود و ثبت‌نام برای عموم رایگان است. 🚀

👨‍🏫 تحت هدایت سالار کلانتری، این دوره شما را با مفاهیم پیشرفته و کاربردی مدل‌های ترنسفورمر و دیفیوژن آشنا خواهد کرد. یک نکته بسیار هیجان‌انگیز این است که بعد از هر جلسه، ویدیوهای ضبط شده در یوتیوب قرار می‌گیرند، بنابراین هیچ بخشی از درس را از دست نخواهید داد! 🎥🌐

🔗 لینک به ویدیوهای ضبط شده

📋 برای شرکت در این دوره شگفت‌انگیز، فرم زیر را پر کنید و به دوستانتان نیز اطلاع دهید تا آن‌ها نیز از این فرصت طلایی بهره‌مند شوند:

🔗 فرم ثبت‌نام در دوره

🎉 با تشکر از دانشکده ریاضی، آمار و علوم کامپیوتر دانشگاه تهران برای این فرصت بی‌نظیر! 🌟

فرصت را از دست ندهید و همین حالا ثبت‌نام کنید! 🌐📚

🔗 همچنین، لطفاً این اطلاعیه را با دوستان خود به اشتراک بگذارید تا آن‌ها نیز بتوانند از این دوره بهره‌مند شوند! 🤝📢

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍1
👨🏻‍💻 بالاخره یه نفر پیدا شد و یه وبسایت عالی مثل LeetCode برای الگوریتم‌های ماشین لرنینگ درست کرد که نتیجه‌اش فراتر از تصوراتتونه! 🌟

📄 وبسایت Deep-ML پر از تمرین‌های چالش‌برانگیز توی زمینه‌های مختلف مثل یادگیری ماشین 🤖، یادگیری عمیق 🧠 و جبر خطی 📐. از مسائل ساده مثل محاسبه‌ی ماتریس 🧮 تا تمرین‌های پیشرفته مثل پیاده‌سازی رگرسیون خطی 📉 و توابع فعال‌ساز ⚙️، همه رو اینجا پیدا می‌کنین. تمرین‌ها بر اساس سختی مرتب شدن؛ از آسون 🟢 تا سخت 🔴. هر تمرین هم راهنمایی‌ها و توضیحات لازم رو داره که اگه گیر کردین، کمکتون می‌کنه 💡.

با حل تمرین‌ها می‌تونین مهارت‌هاتون رو ارتقا بدین و پیشرفتتون رو دنبال کنین 📈. این وبسایت برای همه‌ی سطوح از مبتدی تا حرفه‌ای مناسبه و یه جای عالی برای یادگیری و تمرینه 📚.

شروع کنید و مهارت‌هاتون رو به سطح بالاتری برسونید! 🚀

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👏5👍2
@AlgorithmDesign_DataStructuer.pdf
2.6 MB
🔍 نگاهی به یادگیری عمیق در بینایی کامپیوتر 🔍

📚 در این پی دی اف، به بررسی یادگیری عمیق در بینایی ماشین می‌پردازیم. با مطالعه این فایل، می‌توانید با نحوه کارکرد شبکه‌های CNN آشنا شوید و مثالی از پیاده‌سازی کد روی دیتاست معروف MNIST را مشاهده کنید. !

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍2
ساختمان داده صنعتی همدان.zip
10.6 MB
اسلایدهای تدریس شده درس ساختمان داده در دانشگاه صنعتی همدان 📚🏫

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍2
Media is too big
VIEW IN TELEGRAM
توضیحات تکمیلی درباره معماری ترانسفورمر(Transformer Architecture) 🤖

جلسه‌ای که در معاونت آموزشی جهاد دانشگاهی برگزار شده، بسیار مفید و جامع بوده است. این جلسه به بررسی جزئیات معماری ترانسفورمر پرداخته و کاربردهای آن در زمینه‌های مختلف مانند پردازش زبان طبیعی (NLP) و یادگیری ماشین را توضیح می‌دهد. توصیه می‌کنم حتماً این جلسه را ببینید تا با آخرین دستاوردهای این حوزه آشنا شوید.

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍4
def binary_search(arr, target):
left = 0
right = len(arr) - 1

while left <= right:
mid = (left + right) // 2


if arr[mid] == target:
return mid
elif arr[mid] < target:
left = mid + 1
else:
right = mid - 1

return -1


arr = [1, 3, 5, 7, 9, 11, 13, 15]
target = 7
index = binary_search(arr, target)

if index != -1:
print(f"عنصر {target} در ایندکس {index} یافت شد.")
else:
print(f"عنصر {target} یافت نشد.")

📚 جستجوی دودویی به صورت غیر بازگشتی 🔍

جستجوی دودویی (Binary Search) یکی از الگوریتم‌های محبوب برای پیدا کردن یک عنصر در یک آرایه مرتب شده است. این الگوریتم با استفاده از تقسیم و تسخیر (Divide and Conquer) و به صورت غیر بازگشتی، می‌تواند به سرعت موقعیت هدف را پیدا کند.

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍5
Ketab_Jabr_Khati.pdf
6.8 MB
📘 معرفی کتاب: "جبر خطی"

مولفان: دکتر محمد حسن بیژن‌زاده، دکتر شهریار فرهمندار و دیگران
سال نشر: 1389

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

🔍 ویژگی‌های کلیدی:
- ساختار منظم و واضح که به یادگیری بهتر کمک می‌کند.
- تمرینات عملی برای تسلط بر مفاهیم.
- مناسب برای دانشجویان و پژوهشگران در رشته‌های مختلف.

📚 با مطالعه این کتاب، به دنیای جبر خطی و کاربردهای آن در علوم مختلف وارد شوید و دانش خود را گسترش دهید!

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍6
🌟 هیپ فیبونانچی (Fibonacci Heap) چیست؟ 🌟

هیپ فیبونانچی یک ساختار داده‌ای پیشرفته برای پیاده‌سازی صف‌های اولویت‌دار است که توسط مایکل فردمن و رابرت تارجان معرفی شده است. این ساختار داده‌ای به دلیل کارایی بالا در برخی عملیات‌ها مانند کاهش کلید (decrease-key) و ادغام (merge) بسیار مورد توجه قرار گرفته است.

🔹 ویژگی‌ها:
- ساختار درختی غیر دودویی
- عملکرد سریع در ادغام و دسترسی به حداقل
- مناسب برای الگوریتم‌های گراف مانند دایکسترا و MST

🔹 عملیات‌ها:
- ایجاد هیپ خالی: O(1)
- درج یک عنصر: O(1)
- یافتن حداقل: O(1)
- استخراج حداقل: O(log n)
- کاهش کلید: O(1)
- حذف عنصر: O(log n)

این ساختار به ویژه در مسائلی که نیاز به ادغام مکرر و کاهش کلید دارند، بسیار کارآمد است. 🌳

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍3
🌐 ریاضیات در یادگیری عمیق! 🌐

اگر به دنبال یادگیری مفاهیم ریاضی برای درک بهتر یادگیری ماشین و یادگیری عمیق هستید، منبعی عالی برای شما داریم! 📚

📘 سایت Dive into Deep Learning 📘

در این سایت می‌توانید به منابع آموزشی جامعی دسترسی پیدا کنید که به شما کمک می‌کند تا مفاهیم پیچیده ریاضی مرتبط با یادگیری عمیق را به خوبی فرا بگیرید. از جبر خطی و حساب دیفرانسیل و انتگرال گرفته تا احتمالات و آمار، همه چیز به زبان ساده و با مثال‌های کاربردی توضیح داده شده است. 🧮🔍

💡 ویژگی‌های برجسته سایت:
1. منابع جامع و رایگان 🎁
2. مثال‌های کاربردی و پروژه‌های عملی 💼
3. بروزرسانی مداوم مطالب 🔄
4. پشتیبانی از زبان‌های مختلف 🌍

برای شروع یادگیری و بهره‌برداری از این منابع فوق‌العاده، به لینک زیر مراجعه کنید:
🔗 Dive into Deep Learning

بیایید با هم دنیای یادگیری عمیق را کشف کنیم! 🚀🧠

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍4
🔅 تفاوت بین الگوریتم UCS و *A🔅

الگوریتم‌های UCS (Uniform Cost Search) و A* (A-Star) هر دو برای پیدا کردن کوتاه‌ترین مسیر در گراف‌ها استفاده می‌شوند، اما تفاوت‌های کلیدی بین این دو وجود دارد:

1. مبنای جستجو:
الگوریتم UCS: فقط بر اساس هزینه‌ای که تاکنون برای رسیدن به یک گره صرف شده است g(n) جستجو می‌کند.

الگوریتم *A: علاوه بر هزینه تاکنون صرف شده (g(n، از تخمین هزینه باقی‌مانده تا هدف (h(n)) نیز استفاده می‌کند. تابع ارزیابی در *A به صورت f(n) = g(n) + h(n) تعریف می‌شود.


2. هیوریستیک
:
الگوریتم UCS: از هیچ هیوریستیکی استفاده نمی‌کند.
الگوریتم *A: از هیوریستیک (h(n) استفاده می‌کند تا مسیر را بهینه‌تر پیدا کند.

3. کارایی
:
الگوریتم UCS: ممکن است گره‌های بیشتری را بررسی کند.
الگوریتم*A: به دلیل استفاده از هیوریستیک، معمولاً سریع‌تر به هدف می‌رسد.

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍5👌1
data-structure.pdf
12.7 MB
📚 معرفی جزوه ساختمان داده از فرشید شرافکن 📚

سلام دوستان! 😃 اگر به دنبال یک منبع جامع و کامل برای یادگیری ساختمان داده هستید، جزوه‌ی فرشید شرافکن انتخابی عالی است. این جزوه به گونه‌ای تنظیم شده که به شما کمک می‌کند تا با مباحث مختلف ساختمان داده به صورت عمیق آشنا شوید و مفاهیم را به خوبی درک کنید.

🔍 ویژگی‌های برجسته جزوه:
- شرح دقیق مفاهیم: مفاهیم پیچیده به زبان ساده و قابل فهم توضیح داده شده‌اند.
- حل تست‌های کنکور: شامل نمونه تست‌های کنکور به همراه پاسخ‌های دقیق برای تمرین و ارزیابی توانمندی‌های شما.
- تمرینات عملی: تمرینات و مثال‌های متنوع برای تسلط بهتر بر مطالب.

این جزوه، منبعی بی‌نظیر برای دانشجویان و داوطلبان کنکور است که می‌خواهند با بهره‌گیری از مطالب کاربردی و تست‌های کنکوری، آمادگی خود را افزایش دهند. 🎓

امیدوارم این جزوه به شما در مسیر یادگیری کمک کند و موفقیت‌های بیشتری را برایتان به ارمغان آورد. 📈🌟

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
🔥4👍2
This media is not supported in your browser
VIEW IN TELEGRAM
🚀 معرفی سایت ZZZ Code AI 🚀

سلام به همه! 🌟 امروز می‌خواهیم شما را با یک منبع بی‌نظیر برای توسعه‌دهندگان و علاقه‌مندان به هوش مصنوعی آشنا کنیم: ZZZ Code AI. 🧠💡

این سایت با هدف فراهم کردن ابزارها و منابع مفید برای یادگیری و پیاده‌سازی تکنیک‌های هوش مصنوعی و یادگیری ماشین طراحی شده است. از امکانات برجسته آن می‌توان به موارد زیر اشاره کرد:

🔹 دوره‌های آموزشی تخصصی: دوره‌های متنوع در زمینه‌های مختلف هوش مصنوعی، شامل یادگیری ماشین، یادگیری عمیق و پردازش زبان طبیعی.
🔹 منابع کد منبع: دسترسی به کدهای نمونه و پروژه‌های عملی برای یادگیری بهتر و سریع‌تر.
🔹 مقالات و راهنماها: مقالات علمی و راهنماهای کاربردی برای به‌روز بودن با آخرین پیشرفت‌های این حوزه.

اگر به دنبال ارتقاء مهارت‌های خود در دنیای هوش مصنوعی و یادگیری ماشین هستید، ZZZ Code AI می‌تواند بهترین شریک آموزشی شما باشد. 🌐🚀

برای جزئیات بیشتر و شروع یادگیری، حتماً سری به این سایت بزنید! 🎓🔍

🔗 ZZZ Code AI

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍2👏2