یادگیری تقویتی (RL) یک نوع یادگیری ماشین است که در آن عامل با انجام اقداماتی در محیط و دریافت بازخورد، یاد میگیرد که چگونه تصمیمات بهتری بگیرد.
درخت جستجوی دودویی (Binary Search Tree - BST) یکی از انواع درختهای دودویی است که در آن برای هر گره، تمامی مقادیر در زیردرخت سمت چپ آن کمتر از مقدار گره اصلی و تمامی مقادیر در زیردرخت سمت راست آن بیشتر از مقدار گره اصلی است. این ویژگی به درخت این امکان را میدهد که بهطور مؤثر جستجو، درج و حذف مقادیر را انجام دهد.
درخت جستجوی دودویی بهطور معمول برای ذخیرهسازی دادههایی استفاده میشود که نیاز به جستجوی سریع دارند. این درختها بهویژه در پیادهسازی ساختارهای دادهای مانند دیکشنریها و جداول هش (Hash Tables) مفید هستند. ویژگیهای اصلی درخت جستجوی دودویی شامل موارد زیر است:
در درخت جستجوی دودویی، سه عملیات اصلی وجود دارد که معمولاً روی آن انجام میشود:
در اینجا یک پیادهسازی ساده از درخت جستجوی دودویی در زبان Python آورده شده است:
class Node:
def __init__(self, key):
self.left = None
self.right = None
self.value = key class BST:
def __init__(self):
self.root = None
def insert(self, key):
if self.root is None:
self.root = Node(key)
else:
self._insert(self.root, key)
def _insert(self, root, key):
if key < root.value:
if root.left is None:
root.left = Node(key)
else:
self._insert(root.left, key)
else:
if root.right is None:
root.right = Node(key)
else:
self._insert(root.right, key)
def search(self, key):
return self._search(self.root, key)
def _search(self, root, key):
if root is None or root.value == key:
return root
if key < root.value:
return self._search(root.left, key)
return self._search(root.right, key) # استفاده از درخت جستجوی دودویی bst = BST() bst.insert(20) bst.insert(10) bst.insert(30) bst.insert(5) result = bst.search(10) if result:
print("Found:", result.value) # خروجی: Found: 10 else:
print("Not Found") در این مثال، یک کلاس Node برای گرههای درخت و یک کلاس BST برای خود درخت جستجوی دودویی ایجاد شده است. درخت بهطور بازگشتی ساخته میشود و عملیاتهای جستجو و درج بهصورت بازگشتی انجام میشود.
O(log n) انجام میشود، که باعث کارایی بالای این درخت در پردازش دادهها میشود.O(n) کاهش مییابد. برای جلوگیری از این مشکل، درختهای متوازن مانند AVL Tree و Red-Black Tree استفاده میشوند.برای حل مشکل عدم تعادل، میتوان از درختهای جستجوی دودویی متوازن استفاده کرد. در این نوع درختها، عملیاتهای درج، حذف و جستجو همواره در زمان O(log n) انجام میشود. دو نوع اصلی درخت جستجوی دودویی متوازن عبارتند از:
درختهای جستجوی دودویی متوازن بهویژه در الگوریتمهای جستجو، ذخیرهسازی دادهها و پردازش دادههای بزرگ بسیار مفید هستند.
برای اطلاعات بیشتر، میتوانید از سایت saeidsafaei.ir و اسلایدهای محمد سعید صفایی بهرهبرداری کنید.
در این مبحث، به معرفی انواع دستورالعملهای شرطی پرداخته میشود و در راستای آن، عملگرهای منطقی بهطور کامل مورد بررسی قرار میگیرند. همچنین، با مفاهیمی مانند بلوک دستورالعمل، ارزیابی میانبری و تله سقوط آشنا میشویم. در نهایت، انواع کلمات کلیدی در برنامهنویسی معرفی شده و کاربردهای آنها توضیح داده میشود. هدف این جلسه، تقویت درک شرطها و نحوه استفاده صحیح از آنها در نوشتن برنامههای کاربردی است.
یادگیری تقویتی (RL) یک نوع یادگیری ماشین است که در آن عامل با انجام اقداماتی در محیط و دریافت بازخورد، یاد میگیرد که چگونه تصمیمات بهتری بگیرد.
لیست پیوندی دو طرفه نوعی از لیست پیوندی است که هر عنصر به دو عنصر قبلی و بعدی خود اشاره دارد.
عبور از آرایه به معنای مراجعه به تمام عناصر آرایه به صورت پشت سر هم است تا بتوان عملیاتی بر روی آنها انجام داد.
فناوری پوشیدنی به دستگاههایی اطلاق میشود که به کاربران امکان میدهند تا بهطور پیوسته دادهها را جمعآوری و تجزیه و تحلیل کنند.
اطلاعات خامی که وارد کامپیوتر میشود تا پردازشی روی آن صورت گیرد. دادهها پس از پردازش به صورت اطلاعات ذخیره یا در خروجی نمایش داده میشوند.
امنیت بیومتریک به استفاده از ویژگیهای بیولوژیکی برای احراز هویت افراد و محافظت از دادهها اشاره دارد.
سیستمهای پرواز خودران به هواپیماها و وسایل پرنده اطلاق میشود که قادر به انجام عملیات پروازی بهطور خودکار هستند.
بهینهسازی یادگیری عمیق به تکنیکهایی اطلاق میشود که برای بهبود عملکرد مدلهای یادگیری عمیق به کار میروند.
سیستمهای شناسایی بیومتریک به استفاده از ویژگیهای بیولوژیکی و رفتاری افراد برای شناسایی و تأیید هویت آنها اطلاق میشود.
اولین و مهمترین سوئیچ در شبکه که مسئول تعیین بهترین مسیرها برای ارسال دادهها است.
خروجی به نتایج حاصل از پردازش دادهها گفته میشود که پس از انجام عملیاتها به کاربر یا سیستم دیگری ارسال میشود.
یادگیری خود-نظارتی یک روش یادگیری ماشین است که در آن مدلها از دادهها بدون برچسبهای صریح یاد میگیرند.
کد شیء به کدی اطلاق میشود که پس از ترجمه توسط کامپایلر از کد منبع به زبان ماشین تبدیل شده است. این کد آماده اجرا است.
رابط عصبی به فناوریهایی اطلاق میشود که امکان برقراری ارتباط بین مغز انسان و دستگاههای خارجی را فراهم میکند.
سیستمهای خودمختار به سیستمهایی اطلاق میشود که قادر به انجام وظایف پیچیده بهطور خودکار و بدون نیاز به نظارت انسان هستند.
مجموعهای از فناوریها که برای تضمین کیفیت خدمات در شبکههای حساس به تأخیر و نوسانات، مانند صوت و ویدیو، به کار میروند.
فرایند تخصیص آدرس به دستگاههای مختلف در شبکه برای شناسایی و ارتباط میان آنها.
ساختار داده روشی برای سازماندهی و ذخیره دادهها در حافظه است که به افزایش کارایی برنامهها کمک میکند.
اینترنت اشیاء پزشکی (IoMT) به شبکهای از دستگاهها و حسگرهای پزشکی متصل به اینترنت اطلاق میشود که دادهها را برای نظارت بر بیماران ارسال میکنند.
در این توپولوژی، انتقال اطلاعات در لحظه فقط در یک جهت انجام میشود. هر نود شبکه به یک کابل متصل است.
هوش مصنوعی برای تولید زبان طبیعی به استفاده از الگوریتمهای هوش مصنوعی برای ایجاد محتوای متنی مشابه انسانها اطلاق میشود.
تحقیقات دیجیتال به تجزیه و تحلیل و بازیابی دادهها از سیستمهای دیجیتال برای تحقیقات قضائی و قانونی اطلاق میشود.
الگوریتم مرتبسازی مرج یک الگوریتم تقسیم و غلبه است که آرایهها را با تقسیم آنها به قسمتهای کوچکتر و سپس ادغام مجدد مرتب میکند.
مدلهایی از هوش مصنوعی هستند که از الگوریتمهایی برای شبیهسازی مغز انسان استفاده میکنند. این شبکهها از لایههای مختلفی تشکیل شدهاند که اطلاعات را پردازش میکنند.
عملگر شرطی به ارزیابی یک شرط و انجام عمل خاصی بر اساس نتیجه آن اشاره دارد. این عملگر معمولاً در تصمیمگیریها و کنترل جریان برنامه استفاده میشود.
تابع اصلی در برنامههای C++ است که برنامه از آن شروع به اجرا میکند. این تابع به طور معمول به صورت int main تعریف میشود.
یک ترابایت معادل 1024 گیگابایت است و برای اندازهگیری حجمهای بسیار زیاد دادهها استفاده میشود.
پردازش دادهها در زمان واقعی به تحلیل و پردازش دادهها بلافاصله پس از دریافت آنها گفته میشود، بدون نیاز به ذخیرهسازی طولانیمدت.
بستهای است که اطلاعات توپولوژی شبکه را در پروتکلهای مسیریابی Link State ارسال میکند.
امنیت سایبری به مجموعهای از روشها و تکنیکها اطلاق میشود که برای محافظت از سیستمها، شبکهها و دادهها در برابر تهدیدات دیجیتال به کار میروند.
هوش مصنوعی کوانتومی به استفاده از رایانههای کوانتومی برای پردازش دادهها و بهبود عملکرد هوش مصنوعی اطلاق میشود.
محاسبات فضایی به استفاده از فناوریها برای انجام پردازش دادهها در فضا یا با استفاده از منابع فضایی گفته میشود.
اتصال 5G به نسل پنجم ارتباطات بیسیم اشاره دارد که سرعت و ظرفیت شبکه را به طور قابل توجهی افزایش میدهد.
روندی است که ورودیها را به خروجیها تبدیل میکند. این فرآیند میتواند شامل محاسبات، پردازش دادهها یا انجام کارهای خاص باشد.
متغیر محلی متغیری است که تنها در داخل یک بلوک از کد یا یک تابع قابل دسترسی است و پس از پایان آن بلوک از حافظه حذف میشود.