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

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

Войти
Регистрация
Восстановить пароль
 
bestpalyer1
-1 / 1 / 0
Регистрация: 20.12.2012
Сообщений: 47
#1

Обойти стек, не удаляя вершин - C++

26.05.2013, 20:04. Просмотров 204. Ответов 0
Метки нет (Все метки)

Ребят, помогите разобраться!

Можно ли обойти стек не удаляя вершин?
Вроде этого?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void printstack(stack<int>l)
{
    if(l.empty())
    {
        cout<<"Лист пуст"<<endl;
        return;
    }
 
    for(int i=0;i!=l.size();++i)
    {
        cout<<"Элемент: "<<l.top()<<endl;
        *(l.top())-=1; //не корректно изначально
    }
}
Или только так?:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
void printstack(stack<int>l)
{
    stack<int> q;
    q=l;
    if(l.empty())
    {
        cout<<"Лист пуст"<<endl;
        return;
    }
 
    while(!(l.empty()))
    {
        cout<<"Элемент: "<<l.top()<<endl;
        l.pop();
    }
    l=q;
}
Если работать по 2 варианту, то нужно удалять весь первоначальный стек, чтобы не "болталась" лишняя память?
Или как-то можно реализовать данную функцию без использования дополнительного стека?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.05.2013, 20:04
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Обойти стек, не удаляя вершин (C++):

Из двух стеков с упорядоченными по возрастанию элементами создать новый стек с упорядоченными элементами, не удаляя исходные стеки - C++
Из двух стеков равной длины с вещественными числами создать 1 стек с квадратами значений элементов исходных стеков, не удаляя исходные...

Из двух стеков с упорядоченными по возрастанию элементами создать новый стек с упорядоченными элементами, не удаляя исходные стеки - C++
Здравствуйте. Помогите пожалуйста с программой Из двух стеков с упорядоченными по возрастанию элементами создать новый стек с...

Число вершин, удаленных от пары вершин по кротчайшим маршрутам каждой из следующих длин: 1, 2, 3 и т.д., для каждой пары вершин. - C++
Число вершин, удаленных от пары вершин по кротчайшим маршрутам каждой из следующих длин: 1, 2, 3 и т.д., для каждой пары вершин. ...

Обмен информации правых вершин одного бинарного дерева на информацию левых вершин другого - C++
Помогите пожалуйста с задачей Написать программу обмена информации правых вершин одного бинарного дерева на информацию левых вершин...

Используя стек, описать функцию проверяющую, является ли стек пустым - C++
Используя стек, описать функцию проверяющую, является ли стек пустым

Программа добавляет введенный массив 5*5 в стек и выводит полученный стек двумя столбцами - C++
Программа добавляет введенный массив 5*5 в стек и выводит полученный стек двумя столбцами #include &lt;iostream&gt; #include &lt;stdlib.h&gt; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.05.2013, 20:04
Привет! Вот еще темы с ответами:

Переменные в стеке. Где хранятся? Как обрабатываются? Есть ли программный стек или только стек процессора? - C++
Есть у меня пробелы в познаниях, хотел бы их устранить. 1. Что такое стек в самом языке С++ ? 2. В какой памяти он хранится и почему...

при работе рекурсивной функции заканчивается стек и программа соответственно; как сделать так, чтобы она писала "стек закончился"? - C++
Сабж g++ 4.5.0

Динамический стек массивов-списков. Как обойти AV? - Delphi
Доброй ночи! Написана программа, вроде работает, но есть проблема - при добавлении(удалении) процессов(TProcess) возникает ошибка....

Используя очередь или стек, подсчитайте число вершин на n-ом уровне непустого дерева - C (СИ)
Помогите решить 1. Используя очередь или стек, подсчитайте число вершин на n-ом уровне непустого дерева Т (корень считайте вершиной 0-го...


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

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

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