Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ что тут не правильно? https://www.cyberforum.ru/ cpp-beginners/ thread889805.html
#include "stdafx.h" #include <iostream> #include <stdlib.h> #include <conio.h> using namespace std; class Stack { private:
c++ парсер html страниц C++
Хочу изучить парсер html страниц через с++, но нигде не могу найти нужной литературы, даже примерно где искать не знаю. В поисковике уже разные вариации испробовал, если кто нибудь знает где можно...
C++ сортировка выбором простого массива https://www.cyberforum.ru/ cpp-beginners/ thread889801.html
помогите пожалуйста нарисовать блок схему, вот код по которому нужно нарисовать блок схему #include "stdafx.h" #include "iostream" #include "time.h" #include "iomanip" using namespace std;...
C++ Не компилирует Доброго времени суток! Не могу понять в чем проблема, точь в точь такой же код, корректно компилируется, прога запускается. А вот этот код - нет, выдает кучу ошибок: не объявлен идентификатор... https://www.cyberforum.ru/ cpp-beginners/ thread889770.html
Немного поясните(вектор, push_back) C++
Вот вам код, господа #include <iostream> #include <vector> using namespace std; int main() { vector<int> m; for (int i = 0; i < 10; ++i)
C++ Как поменять местами элементы односвязного списка ? https://www.cyberforum.ru/ cpp-beginners/ thread889753.html
Здравствуйте! Обращаюсь к Вам за помощью . Начал учить списки в с++, односвязные , и стоит задача создать список ,вывести его на экран , а потом поменять два каких либо элемента (любых , не имеет...
C++ функция length #include <vcl.h> #pragma hdrstop #include <stdio.h> #include <string.h> //--------------------------------------------------------------------------- int kolvo_skobok(char s); int k,k1,n;... https://www.cyberforum.ru/ cpp-beginners/ thread889742.html преобразование кода C++
есть программа, написанная в visual studio, необходимо преобразовать под BDS 2006 буду благодарен, если поможете #include "stdafx.h" #include <iostream> using namespace std; void...
C++ Как считать файл с табличкой? https://www.cyberforum.ru/ cpp-beginners/ thread889735.html
Добрый вечер! Подскажите пожалуйста : у меня есть файл в формате txt, в котором находится табличка (с числами) 15*5. Его нужно считать! Можно ли его считать с помощью fgets? Или есть еще...
C++ Дописать класс "Коллекция" Помогите дописать класс коллекция, который должен иметь методы для изменения количества объектов: добавление в конец,вставка, усечение, удаление из середины. При обращении к элементам с... https://www.cyberforum.ru/ cpp-beginners/ thread889734.html
Дан текстовый файл; получить строку, в которой наименьшее число знаков препинания C++
Здравствуйте. Дан текстовый файл. Получить строку в которой наименьшее число знаков препинания. Как реализовать сие чудо? С файлами ни разу не работал, так что не имею представления. Может кто...
C++ Функции ввода, просмотра, определения столбца https://www.cyberforum.ru/ cpp-beginners/ thread889715.html
Напишите программу, проверяя корректность введения размера массива. Дан массив, который содержит м строк и н столбиков . Оформить в виде отдельных функций введение, просмотр и определение номеров...
Don't worry, be happy
17781 / 10545 / 2035
Регистрация: 27.09.2012
Сообщений: 26,515
Записей в блоге: 1
03.06.2013, 21:29 0

Структура стек (: добавить элемент в стек, удалить элемент из стека, получить значение с вершины стека, размер стека...) - C++ - Ответ 4664015

03.06.2013, 21:29. Показов 11177. Ответов 1
Метки (Все метки)

Лучший ответ Сообщение было отмечено lulu13 как решение

Решение

Допотопная реализация. Только функции ввода/вывода добавьте
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
#ifndef _Stack_H_
#define _Stack_H_
#include <cstddef>
namespace MTL{
template<typename T>
class Stack{
private:
    template<typename Ty>
    struct Stack_Node{
        Ty data;
        Stack_Node * next;
        Stack_Node(const Ty & _data,const Stack_Node * _next):data((Ty)_data),next((Stack_Node*)_next){}
    };
    Stack_Node<T> * topnode;
    size_t count;
public:
    Stack();
    Stack(Stack&);
    ~Stack();
    T & top() const;
    void pop();
    void push(const T & _val);
    bool empty() const;
    bool nonempty() const;
    size_t size() const;
};
 
 
template<typename T>
Stack<T>::Stack():topnode(nullptr),count(0){
}
 
template<typename T>
Stack<T>::Stack(Stack & cpy):topnode(nullptr),count(cpy.count){
    Stack_Node<T> * tempcpy=cpy.topnode;
    Stack_Node<T> * temp=nullptr;
    if(!count){
        return;
    }
    temp=topnode=new Stack_Node<T>(cpy.top(),nullptr);
    tempcpy=tempcpy->next;
    while(tempcpy){
        temp->next=new Stack_Node<T>(tempcpy->data,nullptr);
        temp=temp->next;
        tempcpy=tempcpy->next;
    }
}
 
template<typename T>
Stack<T>::~Stack(){
    Stack_Node<T> * temp=topnode;
    while(topnode){
        topnode=topnode->next;
        delete temp;
        temp=topnode;
    }
}
 
template<typename T>
bool Stack<T>::empty()const{
    return !count;
}
 
template<typename T>
bool Stack<T>::nonempty()const{
    return (bool)count;
}
 
template<typename T>
void Stack<T>::push(const T & _val){
    topnode=new Stack_Node<T>(_val,topnode);
    ++count;
}
template<typename T>
void Stack<T>::pop(){
    if (!topnode){
        // STACK пуст
        return;
    }
    Stack_Node<T> * temp=topnode;
    topnode=topnode->next;
    delete temp;
    --count;
}
template<typename T>
T & Stack<T>::top()const{
    return topnode->data;
}
 
template<typename T>
size_t Stack<T>::size()const{
    return count;
}
 
}//END MTL
#endif //END _Stack_H_


Вернуться к обсуждению:
Структура стек (: добавить элемент в стек, удалить элемент из стека, получить значение с вершины стека, размер стека...) C++
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.06.2013, 21:29
Готовые ответы и решения:

Подскажите как добавить элемент в стек и вывести адрес новой вершины стека
Dynamic3 . Дано число D и указатель P1 на вершину непустого стека. Добавить элемент со значением D...

Удалить элемент из стека по условию и добавить элемент в начало стека
Здравствуйте, помогите пожалуйста исправить(дописать) программы. 1). Нужно удалить элемент,...

Дан стек символов. Удалить каждый n - ый элемент стека
Здравствуйте, написал код, который нормально удаляет только каждые 2-ые элементы, если каждые 3-ие,...

Создать стек для символов. Максимальный размер стека вводится с экрана. Создать функции для ввода и вывода элементов стека. Ввести эталонный символ.
Создать стек для символов. Максимальный размер стека вводится с экрана. Создать функции для ввода...

1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.06.2013, 21:29
Помогаю со студенческими работами здесь

Сформировать стек из 6 цифр. Вывести стек на экран. Удалить элементы из стека, увеличить каждый из них на единицу и снов
Сформировать стек из 6 цифр. Вывести стек на экран. Удалить элементы из стека, увеличить каждый из...

Создать новый стек, в который поместить каждый третий элемент первого стека
Помогите, пожалуйста реализовать следующее: создать стек с числами в диапазоне от –50 до +50. После...

Используя стек вывести числа введенные пользователем в обратном порядке элемент стека – число
помогите плиз решить ..Используя стек вывести числа введенные пользователем в обратном порядке...

Создать стек из вещественных чисел; найти максимальный элемент в стеке; организовать просмотр данных стека
Создать стек из вещественных чисел. Определить максимальный элемент в стеке. Организовать просмотр...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru