Está en la página 1de 5

Name: Yeasir Ahnaf Asif

Id:20-42815-1
Course:Data Structure
Section:J
Serial No: 37

Course Teacher: Asma Faria


Date:19/11/2020
Insertion Sort:
A = [110 109 108 107 106 105]

For j=2 to N
Key= A[j]
i=j-1
While i>0 and A[i]>key
A[i+1]=A[i]
i=i-1
A[i+1]=key

1 2 3 4 5 6=N
110 109 108 107 106 105 J=2, i=1
110 /109 109/110 108 107 106 105
109 110 108 107 106 105 J=3, i=2,1
109/108 110/109 108/110 107 106 105
108 109 110 107 106 105 J=4, i=3,2,1
108/107 109/108 110/109 107/110 106 105
107 108 109 110 106 105 J=5,
i=4,3,2,1
107/106 108/107 109/108 110/109 106/110 105
106 107 108 109 110 105 J=6,
i=5,4,3,2,1
106/105 107/106 108/107 109/108 110/109 105/110
105 106 107 108 109 110

J=2, key=A[j=2]=109, i=1 A[1]>key 110>109 true, A[2]=A[1] =110; i=0 false break;
A[0+1]=A[1]=Key=109;

J=3, key=A[j=3]=108, i=2, 110>108 true, A[3]=A[2] =110; i=1 109>108 true, A[2]=A[1]=109;
i=0 false break; A[0+1]=A[1]=Key=108;
J=4, key=A[j=4]=107, i=3, 110>107 true, A[4]=A[3]=110; i=2, 109>107 true, A[3]=A[2]
=109; i=1 108>107 true, A[2]=A[1]=108, i=0 false break; A[0+1]=A[1]=Key=107;

J=5, key=A[j=5]=106, i=4, 110>106 true, A[5]=A[4]=110; i=3, 109>106 true, A[4]=A[3]=109;
i=2, 108>106 true, A[3]=A[2] =108, i=1 107>106 true, A[2]=A[1]=107; i=0 false break;
A[0+1]=A[1]=Key=106;

J=6, key=A[j=6]=105,i=5, 110>105 true, A[6]=A[5]=110; i=4, 109>105 true, A[5]=A[4]=109;


i=3, 108>105 true, A[4]=A[3]=108; i=2, 107>105 true, A[3]=A[2] =107, i=1 106>105 true,
A[2]=A[1]=106; i=0 false break; A[0+1]=A[1]=Key=105;

Infix To Postfix

Infix : Q= A+(B*C-D)/E
Postfix :Q=ABC*D-E/+

If operand: push stack


If operator: then pop two operand from stack then evaluate and push the result on stack

Expression Stack Postfix


Q ( Q
= ( Q=
( Q=
A ( Q=A
+ (+ Q=A
( (+( Q=A
B (+( Q=AB
* (+(* Q=AB
C (+(* Q=ABC
- (+(- Q=ABC*
D (+(- Q=ABC*D
) (+ Q=ABC*D-
/ (+/ Q=ABC*D-
E (+/ Q=ABC*D-E
) Q=ABC*D-E/+

También podría gustarte