بررسی خروجی یک متغیر از حافظه به دلیل اختصاص بیش از حد حافظه به دادهها. این خطا معمولاً زمانی اتفاق میافتد که پشته ذخیرهسازی بیش از ظرفیت خود باشد.
لیست پیوندی دوطرفه (Double Linked List) یکی از ساختارهای دادهای است که در آن هر عنصر (گره) از لیست به دو عنصر دیگر (گرهها) پیوند دارد: یکی به گره قبلی و دیگری به گره بعدی. برخلاف لیست پیوندی ساده (Single Linked List) که تنها به گره بعدی پیوند دارد، لیست پیوندی دوطرفه این امکان را به شما میدهد که از هر دو طرف لیست به دادهها دسترسی پیدا کنید.
در یک لیست پیوندی دوطرفه، هر گره معمولاً از سه بخش تشکیل شده است:
یکی از مزایای لیست پیوندی دوطرفه نسبت به لیست پیوندی ساده این است که عملیاتهایی مانند جستجو، حذف و افزودن گرهها از هر دو سمت لیست به راحتی انجام میشود. بهعنوان مثال، شما میتوانید به راحتی به گره قبلی دسترسی پیدا کنید و نیازی به پیمایش از ابتدای لیست ندارید.
ساختار گره در لیست پیوندی دوطرفه به صورت زیر است:
class Node:
def __init__(self, data=None):
self.data = data # داده گره
self.next = None # اشارهگر به گره بعدی
self.prev = None # اشارهگر به گره قبلی در این ساختار، هر گره دادهای را درون خود نگه میدارد و دارای دو اشارهگر است: یکی به گره بعدی و دیگری به گره قبلی. با استفاده از این اشارهگرها میتوان از هر دو سمت لیست دسترسی داشت.
از لیست پیوندی دوطرفه در بسیاری از الگوریتمها و برنامهها استفاده میشود. بهعنوان مثال، در پیادهسازی صفها و پشتهها، میتوان از لیستهای پیوندی دوطرفه برای انجام عملیات افزودن و حذف عناصر از هر دو سمت استفاده کرد.
در مقایسه با لیست پیوندی ساده، لیست پیوندی دوطرفه نیاز به حافظه بیشتری دارد، زیرا هر گره باید علاوه بر دادهها، دو اشارهگر را نگه دارد. همچنین، پیادهسازی و مدیریت این ساختار دادهای پیچیدهتر از لیست پیوندی ساده است.
بهطور کلی، لیست پیوندی دوطرفه برای مواقعی که نیاز به دسترسی دوطرفه به دادهها دارید، بسیار مفید است و در بسیاری از سیستمها و الگوریتمها استفاده میشود.
در این مبحث، به معرفی دستورات حلقه و تکرار پرداخته شده و شباهتها و تفاوتهای آنها بررسی میشود. همچنین، با حل چندین مثال، کاربرد عملی این دستورات در برنامهنویسی نمایش داده میشود. در پایان، به بررسی نکات کلیدی در رابطه با توقف و ادامه در حلقهها و نحوه مدیریت حلقههای بینهایت خواهیم پرداخت. هدف این جلسه، آشنایی با ساختار و عملکرد حلقهها و توانمندسازی شما برای استفاده از آنها در برنامههای پیچیدهتر است.
بررسی خروجی یک متغیر از حافظه به دلیل اختصاص بیش از حد حافظه به دادهها. این خطا معمولاً زمانی اتفاق میافتد که پشته ذخیرهسازی بیش از ظرفیت خود باشد.
یادگیری انتقالی به روشی برای استفاده از مدلهای آموزشدیده در یک دامنه بهمنظور بهبود عملکرد در دامنههای دیگر گفته میشود.
پروتکل مسیریابی Link State که از الگوریتم Dijkstra برای محاسبه کوتاهترین مسیر استفاده میکند.
بلاکچین برای مدیریت هویت به استفاده از شبکههای بلاکچین برای ایجاد سیستمهای شفاف و غیرمتمرکز مدیریت هویت افراد اطلاق میشود.
توسعه بومی ابری به طراحی و توسعه نرمافزارهایی اطلاق میشود که بهطور خاص برای عملکرد بهینه در محیطهای ابری ایجاد شدهاند.
مهندسی عصبیشکل به مطالعه و توسعه سیستمهای محاسباتی است که از اصول سیستمهای عصبی بیولوژیکی برای حل مشکلات استفاده میکنند.
بهینهسازی مسیرها و استفاده از منابع شبکه برای بهبود عملکرد کلی شبکه.
مرتبسازی به معنای قرار دادن دادهها در یک ترتیب خاص است، مانند مرتبسازی اعداد به ترتیب صعودی یا نزولی.
نرمافزارها شامل برنامهها و دادههای مرتبط هستند که سیستم کامپیوتری آنها را پردازش میکند.
حلقه do while مشابه با حلقه while است، با این تفاوت که ابتدا دستور اجرا میشود و سپس شرط بررسی میشود.
لیست پیوندی دو طرفه نوعی از لیست پیوندی است که هر عنصر به دو عنصر قبلی و بعدی خود اشاره دارد.
واقعیت افزوده (AR) محیط واقعی را با اطلاعات دیجیتال یا تصاویر ترکیب میکند تا تجربهای تعاملی و غنی ایجاد کند.
قسمت صحیح یک عدد که بدون هیچ نقطه اعشاری است. این قسمت معمولاً در تبدیلهای مبنای مختلف ابتدا محاسبه میشود.
میزان دادهای که در واحد زمان توسط یک دستگاه فیزیکی قابل ارسال یا دریافت باشد، معمولاً بر حسب بیت بر ثانیه (bps) اندازهگیری میشود.
هوش مصنوعی نسل بعدی به پیشرفتها و روشهای جدید در هوش مصنوعی گفته میشود که بهطور خاص برای حل مسائل پیچیده طراحی شدهاند.
توابع ساختهشده توسط کاربر توابعی هستند که برنامهنویسان برای انجام کارهای خاص خود میسازند. این توابع میتوانند به صورت مجزا از برنامه فراخوانی شوند.
فرآیند تبدیل اطلاعات به کدی غیرقابل فهم برای محافظت از دادهها در برابر دسترسی غیرمجاز.
نوسانات یا تغییرات در زمان تأخیر انتقال بستههای داده در شبکه.
یک ترابایت معادل 1024 گیگابایت است و برای اندازهگیری حجمهای بسیار زیاد دادهها استفاده میشود.
اضافه بار یا اوورفلو زمانی رخ میدهد که سیستم محاسباتی نمیتواند عددی بزرگتر از ظرفیت ذخیرهسازی خود را پردازش کند.
کانکتور مخصوص کابلهای تلفن که برای کابلهای UTP CAT-1 استفاده میشود.
پروتکلی ترکیبی از Distance Vector و Link State که از معیارهای مختلف برای انتخاب بهترین مسیر استفاده میکند.
نمایش اعداد به صورت اعشاری که در آن عدد به صورت عدد صحیح و توان در نظر گرفته میشود.
پایان به آخرین مرحله در الگوریتم گفته میشود که پس از آن هیچ پردازش یا محاسبات بیشتری انجام نمیشود.
محاسبات فضایی به استفاده از فناوریها برای انجام پردازش دادهها در فضا یا با استفاده از منابع فضایی گفته میشود.
محاسبات ژنومی به استفاده از تکنیکهای محاسباتی برای تجزیه و تحلیل دادههای ژنتیکی و ژنومیک اطلاق میشود.
توکنهای بلاکچین به واحدهای دیجیتالی اطلاق میشود که در شبکههای بلاکچین برای انجام تراکنشها و ذخیرهسازی دادهها استفاده میشوند.
سوییچهایی که در لایه 2 مدل OSI کار میکنند و برای هدایت بستهها از آدرسهای MAC استفاده میکنند.
فناوری دفترکل توزیعشده به سیستمهایی اطلاق میشود که دادهها را بهصورت غیرمتمرکز و شفاف ذخیره میکنند.
پایگاههای داده گراف به پایگاههای دادهای اطلاق میشود که برای ذخیره و مدیریت اطلاعات در قالب گرافها طراحی شدهاند.
به معنای گواهینامه بینالمللی مهارت کار با کامپیوتر است که یک استاندارد جهانی برای مهارتهای کاربردی کامپیوتر به شمار میآید. افرادی که این گواهینامه را دریافت میکنند، تواناییهایشان در استفاده از نرمافزارهای رایانهای تأیید میشود.
اعلان تابع فرآیند اعلام نام و نوع تابع است که در آن نوع داده بازگشتی و نام پارامترها مشخص میشود، اما بدنه آن در این مرحله تعریف نمیشود.
درمان واقعیت مجازی به استفاده از تکنولوژی VR برای درمان و بهبود بیماریها اشاره دارد.
روش دسترسی که در آن دستگاههای شبکه بهطور دورهای از دستگاه مرکزی درخواست دسترسی به رسانه میکنند.
پایگاه دادهای که توسط روترها در پروتکلهای Link-State برای ذخیره اطلاعات وضعیت لینکها استفاده میشود.