پیاده سازی پشته ها با لیست های پایتون چگونه انجام می شود ؟
پیاده سازی پشته ها با لیست های پایتون چگونه انجام می شود ؟
پیاده سازی پشته ها با لیست های پایتون چگونه انجام می شود ؟
عملیات لیستی که پایتون ارائه میدهد شبیه عملیاتی است که یک پشـته را تعریـف مـیکنـد. واسط دقیقاً آنچه که باید باشد نیست امـا مـیتـوانیم کـدي بـراي ترجمـۀ ADT پشـته بـه عملیـات از پیشساخته بنویسیم. این کد یک پیادهسازي از ADT پشته نامیده میشود. در کل یـک پیادهسـازي مجموعـهاي از متدهایی است که نیازهاي نحوي و معنایی یک واسط را برطرف میکند. در اینجا یک پیادهسازي از ADT پشته را میبینید که از لیست پایتون استفاده میکند:
class Stack:
def __init__(self):
self.items = []
def push(self, item):
self.items.append(item)
def pop(self):
return self.items.pop()
def isEmpty(self):
return (self.items == [])
یک شیء پشته شامل مشخصهاي بهنام items است که لیستی از عناصر درون پشته را در بـر دارد. متد مقداردهی اولیه items را لیست تهی قرار میدهد. براي وارد کردن یک عنصر جدید به پشـته، push آن را بـه items اضـافه مـیکنـد. جهـت برداشتن یک عنصر از پشته pop از متد لیست همنامی براي حـذف و برگردانـدن آخـرین عنصـر روي لیست استفاده میکند. در نهایت بهمنظور بررسی تهی بودن پشـته isEmpty ، items را بـا لیسـتی تهـی مقایسـه میکند. یک پیادهسازي شبیه به این که متدهاي درون آن شامل احضارهاي سـادهاي بـر روي متـدهاي موجود هستند، یک ونیر نامیده میشود. در زندگی واقعی، ونیر پوشش نازکی از چوب با کیفیت خـوب است که در مبلمانسازي براي پوشاندن چوب با کیفیت کمتر در زیر آن استفاده میشـود. متخصصـین کامپیوتر از این استعاره بهمنظور توصیف قطعۀ کوچکی از کد که جزئیـات یـک پیـادهسـازي را پنهـان میسازد و واسط سادهتر و استانداردتري فراهم میکند، استفاده مینمایند.
برای اموزش های ویدیویی زبان پایتون به بستر ویدیو های اموزشی بروید