Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
Алекс090394
0 / 0 / 0
Регистрация: 25.12.2012
Сообщений: 35
#1

Помогите реализовать стек на основе массива

08.02.2013, 10:43. Просмотров 1003. Ответов 3
Метки нет (Все метки)

помогите с задачачей по с++
3. Реализуйте стек на основе массива.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.02.2013, 10:43
Ответы с готовыми решениями:

Стек на основе массива, реализовать функцию resize
1) Добавить деструктор, конструктор копии и перегрузку операции присваивания....

Создать базовый класс список и реализовать на его основе стек и очередь
2. Создать базовый класс список. Реализовать на базе списка стек и очередь с ...

Помогите реализовать стек
Здравствуйте. Помогите, пожалуйста, решить задачу: Реализуйте структуру данных...

Стек на основе массива
Банально: создать, добавить, удалить. Без своих "написаний" никак, дело в...

Стек на основе статического массива
Здравствуйте! Помогите пожалуйста выполнить задание. Сама уже весь форум...

3
ya_noob
_
315 / 149 / 27
Регистрация: 08.10.2011
Сообщений: 432
08.02.2013, 11:12 #2
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
#include <iostream>
 
class Stack
{
public:
    Stack( int n ) : max_n( n ), s( new int [ max_n ] ), top( 0 ) {}
    ~Stack() { delete [] s; }
 
    bool isEmpty() const { return top == 0; }
    void push( int x ) { s[ top++ ] = x; }
    int pop() { return s[ --top ]; }
private:
    int max_n;
    int *s;
    int top;
};
 
int main()
{
    Stack s( 10 );
 
    s.push( 1 );
    s.push( 2 );
    std::cout << s.pop() << " ";
    s.push( 3 );
    std::cout << s.pop() << " ";
    std::cout << s.pop() << std::endl;
 
    return 0;
}
допиши проверки на выход за пределы массива сам
1
lemegeton
2933 / 1362 / 467
Регистрация: 29.11.2010
Сообщений: 2,725
08.02.2013, 12:41 #3
Цитата Сообщение от ya_noob Посмотреть сообщение
допиши проверки на выход за пределы массива сам
А так же конструктор копии, оператор "=", метод top (или head), метод size.
Опционально перед конструктором допиши explicit, чтобы нельзя было писать глупости Stack s = 1;
Опционально же перед деструктором -- virtual, вдруг кто отнаследуется.
0
go
Эксперт С++
3637 / 1369 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
08.02.2013, 13:41 #4
Цитата Сообщение от lemegeton Посмотреть сообщение
Опционально перед конструктором допиши explicit, чтобы нельзя было писать глупости Stack s = 1;
Более вероятно так, чтобы не было
C++
1
2
3
void fun(Stack);
 
fun(1);
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.02.2013, 13:41

Стек на основе динамического массива
Надо написать стек на основе динамического массива. Как выделить память под...

Написать стек на основе одномерного массива
Пробую написать стек на основе одномерного массива. Скажите что не так делаю....

Создать стек целых чисел на основе статического массива.
Создать стек целых чисел на основе статического массива. Реализовать методы :...


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

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

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