به نام خدا
کتابخانه stack
پشته ( stack ) ساختار داده ای است که داده ها را به صورتی خاص نگه می دارد ، نحوه ی نگهداری داده ها در پشته به صورت اولین ورودی ، آخرین خروجی ( First In , Last Out ) است ، به عنوان مثال می توان بشقاب ها را در نظر گرفت که پس از شسته شدن روی هم قرار می گیرند و در هنگام مصرف رویی ترین بشقاب که آخر از همه شسته شده استفاده می شود.
در زبان ++C این ساختار داده ای در کتابخانه ی stack پیاده سازی شده است.
نحوه ی تعریف یک شی از کلاس stack به صورت زیر است :
stack <نام پشته <نوع پشته;
به عنوان مثال :
stack myStack;
این کلاس شامل تعدادی تابع برای قرار دادن داده در پشته ( push ) ، دسترسی به رویی ترین داده ی پشته ( top ) و حذف کردن آخرین داده ی پشته ( pop ) است. همچنین این کلاس حاوی دو تابع برای بررسی خالی بودن پشته ( empty ) و برگرداندن تعداد داده های درون پشته ( size ) است.
تابع push به صورت زیر استفاده می شود :
نام پشته.push( داده ای از نوع پشته );
به عنوان مثال :
myStack.push( 96 );
تابع pop به صورت زیر استفاده می شود :
نام پشته.pop( );
بقیه توابع نیز به همین صورت استفاده می شوند ، برای آشنایی بیشتر با این کلاس در انتها یک مثال آورده ایم:
#include <iostream>
#include <stack>
using namespace std;
int main( )
{
stack<int> myStack;
for( int i = 1; i <= 5; i++ )
myStack.push( i );
cout << "Stack Size : " << myStack.size( ) << endl;
cout << "Stack Elements: ";
while( myStack.empty( ) != true )
{
cout << myStack.top( ) << " ";
myStack.pop( );
}
cout << endl;
return 0;
}
در این صورت خروجی به شکل زیر خواهد شد:
Stack Size : 5
Stack Elements: 5 4 3 2 1
نویسنده: آقای محمد علی تقوی زاده