#include #include using namespace std;... - вопрос №887652
#include
#include
using namespace std;
struct Node //узел дерева
{
Node *left;
int height;
char key[9];
int balance;
Node *right;
};
int main()
{
int a;
Node *root; //указатель на корень дерева
root = new Node;
root->left=NULL; //0 элементов в дереве
root->height=0;//высота дерева
root->balance=0; //дерево сбаланс.
//root->key=AAAAAA; //ключ узла
root->right = NULL; //дерево пустое
case 2:
cout< cout<< «Give me your kluch»< for (int i=0; i {
cin>>k[i];
k[i]=K[i];
}
for (int i=0; i
if (K[i] < P->key[i])
shag=3;
if (K[i] > P->key[i])
shag=4;
if (K[i] == P->key[i])
{
cout< char variant;
if (variant=='y')
{ for (int i=0; i K[i]=0;}
shag=2;
}
else shag=0;
}
}
case 3:
cout << «It is move left»< Q=P->left;
///////////P->left=Q;
if (Q==NULL)
{
Q=new Node;
P->left=Q;
root->height++;
shag=5;
}
if(Q->balance !=0 )
{
P=T;
Q=S;
Q=P;
shag=2;
}
case 4:
cout << «It is move right»< ///////// P->right=Q;
Q=P->right;
if (Q==NULL)
{
Q=new Node;
Q=P->right;
root->height++;
shag=5;
}
if(Q->balance !=0 )
{
P=T;
Q=S;
Q=P;
shag=2;
}
case 5:
cout<< «It is insert a node»< for (int i=0; i Q->key[i]=K[i];}
Q->left=NULL;
Q->right=NULL;
Q->balance=0;
case 6:
cout<< «It is adjustment balance factor»< for (int i=0; i if (K[i] < S->key[i]) a=-1 ;
else a=1;}
do {
if (a==1)
{ S->right=R=P; }
if (a==-1)
{ S->left=R=P; }
} while (P!=Q);
for (int i=0; i if (K[i]key[i])
{
P->balance=-1;
P=P->left;
}
if (K[i]>P->key[i])
{
P->balance=1;
P=P->right;
}
if (K[i]==P->key[i]) P=Q;
shag=7;}
case 7:
cout << «It is balancing»< if (S->balance==0)
{
S->balance=a;
//root->left++;
root->height++;
shag=0;
}
if (S->balance == -a)
{
S->balance=0;
shag=0;
}
if (S->balance == a)
{
if (R->balance == a) shag=8;
if (R->balance == -a) shag=9;
}
case 8:
cout<< «It is single turn»< P=R;
if (a==1)
{
S->right=R->left;
R->left=S;
}
if (a==-1)
{
S->left=R->right;
R->right=S;
}
S->balance=R->balance=0;
shag=10;
case 9:
cout << «It is twice turn»< if (a==1)
{
P=R->left;
R->left=P->right;
P->right=R;
S->right=P->left;
P->left=S;
}
if (a==-1)
{
R->right=P;
R->right=P->left;
P->left=R;
S->left=P->right;
P->right=S;
}
if (P->balance==a)
{
S->balance=-a;
R->balance=0;
}
if (P->balance==0)
{
S->balance=0;
R->balance=0;
}
if (P->balance==-a)
{
S->balance=0;
R->balance=a;
}
P->balance=0;
case 10:
cout < if (T->right==S) T->right=P;
else T->left=P;
shag=0;
for (int i=0; i K[i]=0;}}
}
Добрый день. Меня заинтересовал ваш ответ "и в чем вопрос?" на вопрос http://www.liveexpert.org/topic/view/887652-include-include-using-namespace-std. Можно с вами обсудить этот ответ?