Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
GHOST12
0 / 0 / 0
Регистрация: 16.11.2011
Сообщений: 87
#1

Очередь и дэк - C++

24.11.2013, 11:57. Просмотров 243. Ответов 0
Метки нет (Все метки)

Нужно в очередь переписать все элементы дэка слева на право.
Помогите реализовать дэк.

Очередь выглядит так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once
class CQueue
{
    int phead;//Указатель на начало очереди
    int ptill;//Указатель на конец очереди
    int *arr;//Массив элементов очереди
    int start;//Начало очереди
    int MaxSize;
    bool full,empty;
public:
    CQueue(int s);
    void push(const int element);//Добавление в конец очереди
    void pop(int *element);//Чтение с начала очереди
    int size_queue();//Кол-во элементов в очереди
    bool is_full();//Определяет полна ли очередь
    bool is_empty();//Определяет пуста ли очередь
    ~CQueue(void);
};
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#include "StdAfx.h"
#include "Queue.h"
 
 
CQueue::CQueue(int s)
{
    if(s==-1&&s<MaxSize)
        start=s;
    else
        start=-1;
    phead=ptill=start;
    arr=NULL;
    full=false;
    empty=true;
    MaxSize=10;
    arr=new int [MaxSize];
 
}
void CQueue::push(const int element)
{
    if(ptill<MaxSize){
        if(phead==start)
            phead=start+1;
        empty=false;
        arr[++ptill]=element;
    }
    else
        full=true;
}
void CQueue::pop(int *element)
{
    if((ptill-phead)!=-1)
        *element=arr[phead++];
    else{
        ptill=phead=start;
        empty=true;
    }
}
bool CQueue::is_full()
{
    return full;
}
bool CQueue::is_empty()
{
    return empty;
}
int CQueue::size_queue()
{
    return ptill-phead;
}
CQueue::~CQueue(void)
{
    delete [] arr;
    arr=NULL;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.11.2013, 11:57
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Очередь и дэк (C++):

Очередь (сделать очередь, чтобы добавляло, удаляло, читало. Не STL.) - C++
Помогите пожалуйста написать очередь. Есть Температура double и ее тип int ну и нужно сделать очередь, чтобы добавляло, удаляло, читало....

Сформировать очередь по файлу целых чисел. Промоделировать очередь в супермаркете - C++
Сформировать очередь по файлу целых чисел. Промоделировать очередь в супермаркете. В каждый момент времени происходит одно из событий:...

Задача на очередь (вывод сообщения, что очередь пуста) - C++
Доброго дня! Есть задачка на очередь, которая работает нормально, только надо добавить код, чтобы выводил сообщение, что очередь пуста.....

Очередь, теория. Очередь на шести стеках - C++
Здравствуйте, пытаюсь побольше найти информации про очереди и их применение в программировании. Из того что я нашел, все описывается лишь...

Создать очередь. Добавить элемент в очередь. Удалить элемент из очереди - C++
Нужно создать очередь. Добавить элемент в очередь. Удалить элемент из очереди. Вот моё &quot;творение&quot;. int main() { int...

Очередь - C++
Здравствуйте! Есть вот такая задача: Удалить из очереди все элементы, расположенные до минимального элемента очереди. Нужно...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.11.2013, 11:57
Привет! Вот еще темы с ответами:

Очередь - C++
В чем проблема? не хочет запускаться код? Ошибки следующие: #include &lt;iostream&gt; #include &lt;queue&gt; using namespace std; ...

Очередь - C++
Задача проги сделать очередь, по сути прога написана по лекции, но выдает ошибки с преобразованием параметра, понимаю, что ошибки глупые,...

Очередь - C++
Описать структуру с именем TRAIN, содержащую следующие поля: - название пункта назначения - номер поезда - время отправления ...

Очередь - C++
Привет всем. Я тут решаю в общем то простое упражнение - нужно проверить переполнение и опустошение очереди. Есть у меня небольшая...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru