پیاده سازی پشته با لیست پیوندی -- درج و حذف :
Viod push-u(NODEPTR top , int x)
{
NODEPTR p ;
P= New Node;
p.data=x;
if(top!=Null)
p.Next=top;
else
p.Next=Null;
top=p;
}
Int pop-LL(NODEPTR top)
{
If ( top == null)
{
Cout<<" Stack is Empty ";
Exit(1);
}
NODEPTR p ; int x ;
P = top; x = p.data ;
Top = p.Next ;
مرحله ساخت درخت :
عبارت میان وندی را بصورت آرایه ای از کاراکتر از ورودی می گیریم و آنرا از ابتدای آرایه بررسی می کنیم.
در صورت دیدن پرانتز باز یا عملگر آن را در پشته درج می کنیم.
در صورت دیدن عملوند آنرا به عنوان یک برگ از درخت لحاظ می کنیم.
در صورت رسیدن به پرانتز بسته تا اولین پرانتز باز از پشته حذف می کنیم
و عملگر حذف شده را به عنوان ریشه 2 گره اخیر درنظر می گیریم