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

👨‍💻Admin👉 @Se_mohamad
Download Telegram
📉🧠 Decreasing Gradient

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

شیب کاهشی با ارزیابی نرخ تغییرات تابع خطا نسبت به پارامترهای مدل، قدم به قدم پارامترها را بهبود می‌بخشد تا مدل به دقت بالاتری برسد.

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍4👌1
معرفی شبکه‌های عصبی در یادگیری عمیق

🤖 شبکه های عصبی بلوک های ساختمانی اساسی الگوریتم های یادگیری عمیق هستند.

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

🔗 این گره از گره های به هم پیوسته که به عنوان نورون های مصنوعی نیز شناخته می شوند، تشکیل شده است که در لایه هایی سازماندهی شده اند.

در یادگیری عمیق، این شبکه‌ها به کامپیوترها کمک می‌کنند تا الگوها و روابط پیچیده را از داده‌ها شناسایی و یاد بگیرند.

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

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
🙏3
معرفی تابعlog^* (Log-Star) در ساختمان داده‌

📐 تابعlog^* چیست؟

تابع log^* یا Log-Star یک تابع ریاضی است که در آن log^*(n) تعداد دفعاتی است که باید تابع لگاریتم را به صورت مکرر روی n اعمال کنیم تا نتیجه به عددی کمتر یا مساوی 1 برسد. به عبارت دیگر، log^*(n) تعداد دفعاتی است که باید تابع لگاریتم را تکرار کنیم تا به عدد 1 برسیم.

مثال‌ها:

برای درک بهتر تابعlog^*، به مثال‌های زیر توجه کنید:

n = 16
- log(16) = 4
- log(4) = 2
- log(2) = 1


پس، log^*(16) = 3 چون سه بار اعمال تابع لگاریتم طول کشید تا به عدد 1 برسیم.


کاربردهای تابعlog^* :

این تابع در تحلیل الگوریتم‌ها و ساختمان داده‌ها به خصوص در زمینه‌هایی که زمان پیچیدگی بسیار مهم است، مورد استفاده قرار می‌گیرد. یکی از کاربردهای معروف این تابع در الگوریتم‌های Union-Find است.

Union-Find

یک ساختمان داده برای مدیریت مجموعه‌های جدا از هم (disjoint sets) است. این ساختمان داده دو عملیات اصلی دارد: union (ادغام دو مجموعه) و find (پیدا کردن نماینده یا رهبر مجموعه). زمان اجرای این عملیات‌ها بهینه‌سازی شده است تا با استفاده از تابع log^* زمان اجرای بسیار کارآمدی داشته باشند.

چرا تابعlog^* مهم است؟

- زمان اجرای بسیار کم: تابع log^* به دلیل رشد بسیار کندی که دارد، حتی برای اعداد بسیار بزرگ نیز مقدار کوچکی دارد. این ویژگی باعث می‌شود که الگوریتم‌هایی که شامل این تابع هستند، زمان اجرای بسیار کارآمدی داشته باشند.
- 📚 کاربردهای گسترده: از این تابع در مسائل مختلف در علوم کامپیوتر و تئوری الگوریتم‌ها استفاده می‌شود، به خصوص در مسائل مربوط به کارایی و بهینه‌سازی.

تابع log^* یکی از ابزارهای مهم در تحلیل و طراحی الگوریتم‌های کارآمد است و درک آن می‌تواند به بهبود عملکرد الگوریتم‌ها و ساختمان داده‌ها کمک شایانی کند.

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍3🔥2
Artificial Intelligence - Dr.Ebadzade ( Fariba Hashemi ).pdf
80.2 MB
📘 جزوه هوش مصنوعی

👨‍🏫 استاد عبادزاده

🏫 دانشگاه صنعتی امیرکبیر

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
def power(base, exponent):

if exponent == 0:
return 1
if exponent == 1:
return base

half_power = power(base, exponent // 2)

if exponent % 2 == 0:
return half_power * half_power
else:
return base * half_power * half_power


base = 2
exponent = 3
result = power(base, exponent)
print(f"{base} to the power of {exponent} is {result}")

📌 محاسبه توان به روش تقسیم و غلبه

برای محاسبه توان با استفاده از روش تقسیم و غلبه (Divide and Conquer)، می‌توان از الگوریتم سریع توان‌دهی استفاده کرد. این روش به صورت بازگشتی توان را با پیچیدگی زمانیO(log n) محاسبه می‌کند.

💡 روش سریع توان‌دهی به صورت بازگشتی:

1. مورد پایه: هر عددی به توان 0 برابر با 1 است.
2. مورد پایه: هر عددی به توان 1 برابر با خودش است.
3. حالت بازگشتی: تقسیم نما بر 2
- اگر نما زوج باشد، نتیجه برابر با مجذور نیم توان است.
- اگر نما فرد باشد، نتیجه برابر با پایه ضربدر مجذور نیم توان است.

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
ORB-SLAM :

پروژه‌ی ORB-SLAM که توسط محققان دانشگاه زاراگوزای اسپانیا توسعه یافته، یکی از پیشرفته‌ترین سیستم‌های موجود در زمینه‌ی پردازش تصویر است. این سیستم برای نقشه‌برداری و موقعیت‌یابی با دقت بالا طراحی شده و در کاربردهای مختلفی نظیر رباتیک، واقعیت افزوده، و خودروهای خودران به کار می‌رود.

🌍🔍

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

🤖🛠

محققان دانشگاه زاراگوزا با توسعه‌ی ORB-SLAM، گام مهمی در پیشرفت تکنولوژی‌های مرتبط با پردازش تصویر برداشته‌اند. این پروژه به عنوان یکی از بهترین سیستم‌های SLAM (Simultaneous Localization and Mapping) شناخته شده و توجه بسیاری از متخصصان و محققان این حوزه را به خود جلب کرده است.

🌐اصلاعات بیشتر :

ORB-SLAM 3: A Tool for 3D Mapping and Localization

Source Code

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
قوانین مهم لگاریتم‌:

در درس ساختمان و طراحی، قوانین لگاریتم‌ها اهمیت ویژه‌ای دارند. این قوانین ابزارهای اساسی برای تحلیل و حل مسائل پیچیده در این حوزه هستند.

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👌3
Visualization.pdf
5.3 MB
📊 در این پی‌دی‌اف، شما با انواع رسم نمودار در پایتون آشنا می‌شوید و می‌آموزید که برای رسم داده‌های خود از کدام نوع نمودار استفاده کنید. 🎨

📈 این راهنما به شما دیدگاهی جامع می‌دهد تا بتوانید با انتخاب بهترین ابزار، داده‌های خود را به شکل بصری و جذاب نمایش دهید. 📉

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
🙏2👍1
📊 تشخیص عدد متفاوت در آرایه تکراری با استفاده از XOR 🧮

سلام دوستان! امروز می‌خواهیم یک مسئله جذاب از دنیای برنامه‌نویسی رو بررسی کنیم. فرض کنید یک آرایه از اعداد داریم که بیشترشون تکراری هستن و فقط یک عدد هست که متفاوت و تنهاست. چطوری می‌تونیم اون عدد رو پیدا کنیم؟ 🤔

یکی از بهترین و بهینه‌ترین روش‌ها استفاده از عملگر XOR است. بیایید این روش رو با هم بررسی کنیم. 🛠

اگر تمام اعداد رو با هم XOR کنیم، اعداد تکراری همدیگر رو خنثی می‌کنن و در نهایت عددی که تنها یک بار ظاهر شده باقی می‌مونه. 🎯

الگوریتم:
1. یک متغیر به نام unique رو با مقدار 0 مقداردهی اولیه کنید. 💡
2. تمام عناصر آرایه رو با unique XOR کنید. 🔄
3. مقدار unique در انتهای عملیات، همون عدد متفاوت خواهد بود. 🥇


def find_unique(arr):
unique = 0
for num in arr:
unique ^= num
return unique

# مثال
arr = [2, 3, 5, 4, 5, 3, 4]
print(find_unique(arr)) # خروجی: 2


در این مثال، arr آرایه‌ای از اعداد هست که در اون عدد 2 تنها یک بار ظاهر شده و بقیه اعداد تکراری هستن. با استفاده از عملگر XOR، تمام اعداد تکراری همدیگر رو خنثی می‌کنن و در نهایت عدد 2 باقی می‌مونه که به عنوان خروجی برگردونده می‌شه. 🎉

پیچیدگی:
- پیچیدگی زمانی: (O(n چون باید تمام عناصر آرایه رو یک بار پیمایش کنیم.
- پیچیدگی فضایی: O(1) چون از هیچ فضای اضافی استفاده نمی‌کنیم. 💾

این روش به دلیل سادگی و کارایی، یکی از بهترین راه‌ها برای حل این مسئله است.

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍9👌1
🔍 مرتب‌سازی درجا (In-Place Sort) نوعی از الگوریتم‌های مرتب‌سازی است که بدون نیاز به فضای اضافی زیاد، عناصر را در همان آرایه ورودی مرتب می‌کند. به عبارت دیگر، فضای اضافی مورد نیاز آن O(1)است.

🌟 مثال‌های مرتب‌سازی درجا:
- مرتب‌سازی حبابی (Bubble Sort) 🔄
- مرتب‌سازی انتخابی (Selection Sort)
- مرتب‌سازی درج مستقیم (Insertion Sort) 📥
- مرتب‌سازی سریع (Quick Sort) ⚡️

🚫 مثال‌های غیر درجا:
- مرتب‌سازی ادغامی (Merge Sort)
- مرتب‌سازی شمارشی (Counting Sort) 📊

مرتب‌سازی‌های درجا به دلیل استفاده کم از حافظه، در محیط‌های با حافظه محدود بسیار مفید هستند. 📉

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍4🙏1
🌟 معرفی ChatHub 🌟

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

🚀 برای شروع، همین حالا از ChatHub استفاده کنید:
https://app.chathub.gg/

💬 تجربه‌ای جدید و کارآمد در مدیریت چت‌ها را از دست ندهید!

#هوش_مصنوعی

📣👨‍💻 @AlgorithmDesign_DataStructuer
🙏1
Jozve va ketab hosh masnoi.rar
36.2 MB
📘 جزوه هوش مصنوعی استاد هاشم فیلی همراه با سوالات کنکور ارشد کامپیوتر 🎓

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