cout<<" * 2 , to ADD element at the end *"<
cout<<" * 3 , to DELETE first element *"<
cout<<" * 4 , to DELETE last element *"<
cout<<" * 5 , to PRINT the queue *"<
cout<<" * other number , to finish *"<
cout<<" ****************************************"<
cout<<" type number : ";
cin>>i;
cout<
switch (i)
{
case 1 :
{
cout<<" type number to ADD : ";
cin>>num;
add_first(num);
break;
}
case 2 :
{
cout<<" type number to ADD : ";
cin>>num;
add_last(num);
break;
}
case 3 :
{
del_first();
break;
}
case 4 :
{
del_last();
break;
}
case 5 :
{
print_queue();
break;
}
default : break;
}
cout<
}
}
-
Таблица на съответствията
Найменование
|
Предназначение
|
a
|
Променлива от реален тип
|
bque
|
Указател
|
i
|
Променлива от реален тип
|
n
|
Брояч
|
tmp
|
Указател
|
tque
|
Указател
|
x
|
Променлива за отпечатване на резултата
|
-
Резултати от изпълнението на програмата
Начало на програмата
***************************************
* 1 , to ADD element at the beggining *
* 2 , to ADD element at the end *
* 3 , to DELETE first element *
* 4 , to DELETE last element *
* 5 , to PRINT the deque *
* other number , to finish *
***************************************
type number :
Добавяне на елемент в началото на дека
***************************************
* 1 , to ADD element at the beggining *
* 2 , to ADD element at the end *
* 3 , to DELETE first element *
* 4 , to DELETE last element *
* 5 , to PRINT the deque *
* other number , to finish *
***************************************
type number : 1
type number to ADD: 1
element added…
Добавяне на елемент в края на дека
***************************************
* 1 , to ADD element at the beggining *
* 2 , to ADD element at the end *
* 3 , to DELETE first element *
* 4 , to DELETE last element *
* 5 , to PRINT the deque *
* other number , to finish *
***************************************
type number : 2
type number to ADD: 2
element added…
Контролна проверка за наличието на елементите в дека ( Отпечатване на дека )
***************************************
* 1 , to ADD element at the beggining *
* 2 , to ADD element at the end *
* 3 , to DELETE first element *
* 4 , to DELETE last element *
* 5 , to PRINT the deque *
* other number , to finish *
***************************************
type number : 5
1 , 2 ,
Изтриване на първи елемент на дека
***************************************
* 1 , to ADD element at the beggining *
* 2 , to ADD element at the end *
* 3 , to DELETE first element *
* 4 , to DELETE last element *
* 5 , to PRINT the deque *
* other number , to finish *
***************************************
type number : 3
element deleted…
Изтриване на последен елемент на дека
***************************************
* 1 , to ADD element at the beggining *
* 2 , to ADD element at the end *
* 3 , to DELETE first element *
* 4 , to DELETE last element *
* 5 , to PRINT the deque *
* other number , to finish *
***************************************
type number : 4
element deleted…
Контролна проверка за наличието на елементи в дека ( Отпечатване на дека )
***************************************
* 1 , to ADD element at the beggining *
* 2 , to ADD element at the end *
* 3 , to DELETE first element *
* 4 , to DELETE last element *
* 5 , to PRINT the deque *
* other number , to finish *
***************************************
type number : 5
Empty Deque
Край на програмата
***************************************
* 1 , to ADD element at the beggining *
* 2 , to ADD element at the end *
* 3 , to DELETE first element *
* 4 , to DELETE last element *
* 5 , to PRINT the deque *
* other number , to finish *
***************************************
type number : 6
Press any key to continue…
-
Изводи:
-
Програмата има два общи начина за ефективно прилагане на ДЕК: с използването на модифициран динамичен масив или с двойно-свързан списък. С динамичен масив изпълнението използва даден вариант на динамичен масив, който може да нарасне от двата края. Има възможност за премахване на елементи от двата края вместо само от единия , както е при опашката.
-
Използвана литература:
-
http://en.wikipedia.org
-
http://www.cplusplus.com