Thông tin tài liệu
1
2
3
4
سا
ا 5
تا آه إ 6
تا آه ا 8
تا آه عاأ 8
سا)Stack( 8
اا ً)Queues( 15
تا 20
ااList)( 35
راTrees 52
ردا 67
ا 68
5
)
( )
(
.
,
.
.
.
.
6
ا آه إ ت
عوا فا إ ء ةاا ا ه و ا
ا ةو ا ا ه ث نأ ا تاو
ةا إو ا .
ا ءا و تا ه ا ا آ هDATA
تا وINFORMATION ا سأ ه .
؟ هد نأ آو تا ه و تا ه
ت/ وأ ا ه ُ وأ ُار وأ مرأ وأ فو ن را.
تاو/ ا راو ء .
نذإ ةدا ه ت ن اا و تا ه تا نأ وأ ت ما
ا ه ا قا.
• تا ا عاأ
1. ا.
2. فاوأ ءا .
3. ا .
4. زا.
5. ا تا ما آاو ا +),*,-, (/ ا تاو =), !=
,< ,>, <= ,>=. (
6. وا ا)SAVE(.
7. او ا.
8. او او عا.
ما ُوأ ت لا ت نذإ تا ه
.
• ت ا آاو ا آا
ا نأ ت مزا ا ا إ أ ا ة ًاآ
وهأ:-
د اا ةآاا.
و د ا جااو لدا تا.
د اا ةآاا جااو لدا ) ه تا لد
يأ تاا.
إ ل ا او دو لوا ا نأ
لدا تاا هر تا ,ه ياو ةآاا ا لا
ت او ا آا إ ةرا او جااو لدا تاوو ا
ر ا
ا آا / هو ا ا يأ ا ت اه ن
ا اه .
ا آا / ا ا ا طوأ تا آ هو
يأ وأ ة ا صا تا ن ا صاو
.
و تا آه ا تا و تا آا/ ةرت تزراو
ا
7
و و ةآاا ا لا و ا م م و م
ا زراا إو تا ه .
و/ تا ص و ا ه ا ا ا ةآ ه تا
ةآاا ً ًهو ً ا تا
ًوُاد َ يد او او.
• تا آه ا
فا و تا ز اإ و اةآاا .
او ءا و ا ء.
ا عاأا اا آ ة ق .
ةآاا تا عاو ا ز را.
• عاأتا آه
آ ت آه)STATIC INFORMATION.(
ي ا و تاو لوااو تآه تا
ا دا ق
ت آهد يإ ة آ
عا اه وإ
(1 ة ت آه/ ا هو
تا.
اا.
اا.
تا.
تا.
تا.
(2 ت آهيإ ةآاا ا / را , اا
و ه تا ا ا آ ً اا
8
سا ُوأ)Stack(
سا / و اإو تا ص جذ ةر ه
او اأ جرا وأ اا تا قو ةر وأ جرا اأ ا
LIFO (LAST INPUT FIRST OUTPUT)
ةا او ء أ ج وا ا سا أ لآو
ًوأ ج ن او ا افاو او و top.
ةءااوأ ا يإ او ف top.
• سا ا و
دإ ا ا
اا ءا ت م
زو ا او ضاا ت
ا اا ءا
ولا ا نأ ي سا إ او TOP
ن ُر سا ن TOP=-1 و لدإ لوأ
++ TOP نأ إ او را ا ن دأ آو
سا .
وجاأ سا ا او را ا أ إ نأ ا =-1
وأ NULLاآُر سا ن .
• و سا ق و ةآاا :
سا ا اا ايإ .
صاا ا)COMPACT ( ةآاا يإ دأ.
لآو ت سا إ ا ا
9
ضونأ 4 ) (داو أ )X (اذإو درأ جاإ سا ن
أ هو د (x) ا ا آ
و اهلوأ م سا اد لدإ 1)
#include<iostream.h>
#include<conio.h>
int size=10;
int a[10],top=-1;
int pop();
void push(int[],int);
main(){int i,k;clrscr();
for(i=0;i<size;i++){cin>>k;push(a,k);}
for(i=0;i<size;i++)cout<<pop()<<" ";
getch();}
void push(int a[],int k){
if(top==sise-1)cout<<" FULL STACK";
else
a[++top]=k;
}
int pop(){
if(top<0)cout<<"EMPTE STACK";
else
return a[top ];
}
Top و م هو سا ذ
و إ لا لاوا
سا تا جاأ اد
ن سا نأ
يأ ا top =
ا -1
إو و ا ا
ا ا ا ا ا
ن يا
top
ًر أ سا نأ
ا نtop = -1 ا يأ
ا
ا اد ا ج إو
نا اtop حو
ا ا .
TOP ,PUSH,POP STACK
ا ه آ و تا ءأ ةر
لاود ءا ا يروا.
هو سا تا لدإ اد
ارأ ع و ع
10
ا لا ولاو ا إأ سا ا اه
اSTACK ا و إ ء او أ هو إ هآذ ا
ً.
لآوأ اد ا ن س آا جا م جاأ pop
2) #include<iostream.h>
#include<conio.h>
int size=10;
int a[10],top=-1;
int pop();
void push(int[],int);
main(){clrscr();int i,k;
for(i=0;i<size;i++){cin>>k;push(a,k);}
cout<<"THE MAX VAL = "<<pop();
getch();}
void push(int a[],int k){
if(top==size-1)cout<<" FULL STACK";
else
a[++top]=k;
}
int pop(){int i,max=a[top ];
for (;;)
{if(top<0)break;
else
if(max<a[top])max=a[top];top ;}
return max;
}
انأ و و او لا يإ ه فا نإ با نآ ا ا
ااا و اه ا د سا ا و ا اد ا با ا
ز آا
for(;;) أ ا ط BREAK.
سا ت وأ ساا Prefix and Postfix درو ماا نو
سا.
3)
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
void check(char[]);
main(){clrscr();char s[100];
cin>>s;check(s);
getch();}
void check(char s[]){char c;int i,x,y;x=y=0;
for (i=0;(c=s[i])!='\0';i++){
if(c=='('||c=='[')x++;
else
ن با top <0
نر إو max نأ إ اهو
Max آا
ا ة
ا س ه(
قا س و)
س آو
ا آ
اذ ا با نرو
س آا قا س نآ
م ر ا
ا و
ا أ نر ا و اذ
ا آا ا ىإ نآ
ل إو ءا
ا
[...]... ;pop();} } ا س؟ ف إي 7) #include #include int size=10; int a[10],top=-1; int pop(); void del_pop(int[],int); void push(int[],int); main(){clrscr();int i,k; for(i=0;i>k;push(a,k);} couti;del_pop(a,i); getch();} 13 ا إ ه اا وا ه اا و ا اآ ة ا اآ ة ن ا د وه ا ا {)void push(int a[],int k ;"if(top==size-1)cout .
#include<iostream.h>
#include<conio.h>
int size=10;
int a[10],top=-1;
int pop();
void del_pop(int[],int);
void push(int[],int);
main(){clrscr();int. pop
2) #include<iostream.h>
#include<conio.h>
int size=10;
int a[10],top=-1;
int pop();
void push(int[],int);
main(){clrscr();int i,k;
Ngày đăng: 05/03/2014, 20:20
Xem thêm: Data structures in c++ pdf, Data structures in c++ pdf