tgoop.com/djangolearn_ir/1071
Last Update:
تجربه مصاحبه از کانال pyHints با یکم حذفیات از پست اصلی
سیستمی رو پیاده سازی کن که بعنوان ورودی یک استرینگ از محاسبات ریاضی بصورت infix دریافت کنه؛ بتونه خروجی رو بصورت postfix, یا prefix (هرکدوم راحتتری) تحویل بده یا اگر object اون کلاس صدا زده شده؛ با استفاده از postfix/prefix پیادهسازی شده محاسبات رو انجام بده و خروجی رو تحویل.
من اینو یادمه که با postfix حل کردم چون راحتتر بود (stack) :
اما چندتا چیز رو بررسی میکرد:
۱- چون صحبت از object شد باید. OOP میبود
۲- حتماً باید call رو براش پیادهسازی میکردم که callable باشه (این یعنی داندر متودها رو میشناسم)
۳- سراغ پیادهسازی سادهتر رفتم (تصمیم گیری و شناخت مسأله، البته توضیح هم دادم چرا بنظرم سادهتر هست و ...)
۴- استفاده از stack که بعد خود stack رو پیادهسازی کردم (آشنایی با DS, حتی بحث هم کردم بین LinkedList, Array چرا و کدوم رو انتخاب میکنم برای ساخت stack) .
اگر خواستید پیادهسازی کنید این حالات رو تست کنید (تو مصاحبه از مصاحبه کننده باید پرسیده بشه)
۱- سیستم ورودی invalid داشته باشه؛ خروجی برای هر دو حالت None هست
۲- سیستم infix برای اولویت دادن به محاسبات از () ممکنه استفاده کنه
۳- سیستم فقط از ۴ عمل اصلی + پرانتز پشتیبانی خواهد کرد
۴- ورودیهای عددی ممکنه float/int باشه
۵- ممکنه بین کاراکترها space باشه یا نباشه
"17+3.5" or "17 + 3.5"
هر دو درست هست.
BY جنگولرن
Share with your friend now:
tgoop.com/djangolearn_ir/1071