ویژگی های کارکرد چیست ؟
ویژگی های کارکرد چیست ؟
معمولاً وقتی یک متد را احضار میکنیم، نگران جزئیات پیادهسازي آن نیستیم. اما ممکن است که یک «نکتۀ ظریف» وجود داشته باشد که بخواهیم بدانیم: ویژگیهـاي کـارکرد. همچنـانکـه تعـداد اقلام درون مجموعه افزایش مییابد، مدت زمان اجرا چقدر خواهد بود و به چه صورت تغییر میکند؟ ابتدا به remove نگاه کنید. هیچ حلقه یا فراخوانی تابعی در اینجا وجـود نـدارد، یعنـی زمـان اجراي این متد همواره یکسان است. چنین متدي یـک عملیـات ثابـت-زمـانی نامیـده مـیشـود. در حقیقت ممکن است که متد وقتی لیست خالی است اندکی سریعتر باشد چراکه از بدنۀ شـرطهـا عبـور میکند، اما این تفاوت چندان قابل توجه نیست. کارکرد insert بسیار متفاوت است. در حالت کلی، ما مجبـوریم بـراي پیـدا کـردن آخـرین عضو، لیست را پیمایش کنیم. این پیمایش بسته به طول لیست وقتگیر است. از آنجـا کـه زمـان اجـرا یک تابع خطی از طول است، این متد زمان-خطی نامیده میشود و در مقایسه بـا متـدهـاي عملیـات ثابت-زمانی بسیار بد است.
برای اموزش های ویدیویی زبان پایتون به بستر ویدیو های اموزشی بروید