246 / 178 / 47
Регистрация: 14.06.2010
Сообщений: 422
|
||||||
1 | ||||||
Определить количество элементов в стеке01.09.2010, 21:42. Показов 14346. Ответов 39
Метки нет (Все метки)
Привет народ.
Подскажите пожалуйста как получить кол-во элементов в стеке? Я пытаюсь написать функцию выдающую такое значение. Спасибо.
0
|
01.09.2010, 21:42 | |
Ответы с готовыми решениями:
39
В стеке определить количество элементов имеющих значения меньше среднего В стеке определить количество элементов, имеющих значения меньше среднего и удалить эти элементы Посчитать в стеке количество элементов между минимальным и максимальным значениями Подсчитать количество элементов в стеке |
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
|
|
01.09.2010, 22:10 | 2 |
Переменная top должна указывать на вершину, это и будет количестом элементов в стеке.
0
|
25 / 25 / 3
Регистрация: 06.03.2010
Сообщений: 59
|
||||||
01.09.2010, 22:13 | 3 | |||||
Ты тут Top обнуляешь а потом вызываешь чтоб показать количество, на выходе вполне ожидаемый ноль,
все правильно за исключением назв переменной
0
|
246 / 178 / 47
Регистрация: 14.06.2010
Сообщений: 422
|
|
01.09.2010, 22:16 [ТС] | 4 |
длины массива. Помню в C# есть что-то вроде Stack1.Length
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
01.09.2010, 22:17 | 5 | |||||
Хотя видимо надо) Ссори) А что неверно-то? Результат выполнения:
0
|
246 / 178 / 47
Регистрация: 14.06.2010
Сообщений: 422
|
|
01.09.2010, 22:25 [ТС] | 6 |
Код
Что за? Вы подаете в функцию 1 10-ый элемент. Оно вам надо? оО Примерно то же самое хотелось бы сделать с функцией Pop.
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
01.09.2010, 22:29 | 7 |
NikolaWhite, Туплю. День видать тяжелый был.
0
|
246 / 178 / 47
Регистрация: 14.06.2010
Сообщений: 422
|
|
01.09.2010, 22:41 [ТС] | 8 |
Позвольте не согласиться.Функция Push() принимает в качестве аргумента вызывающий объект
(Stack1[10] или Stack2[10] )
0
|
ForEveR
|
01.09.2010, 22:42
#9
|
Не по теме: NikolaWhite, Да-да. Верно. Я ж написал выше.
0
|
Jupiter
|
01.09.2010, 22:51
#10
|
Не по теме: NikolaWhite, а смысл делать данные открытыми?
0
|
246 / 178 / 47
Регистрация: 14.06.2010
Сообщений: 422
|
|
01.09.2010, 22:52 [ТС] | 11 |
И все-таки.....как же получить это количество элементов в массиве/стеке?????
Кто-нибудь???
0
|
246 / 178 / 47
Регистрация: 14.06.2010
Сообщений: 422
|
|
01.09.2010, 23:09 [ТС] | 13 |
У меня два стека(а может быть больше) ,а переменная Top одна. Кол-во элементов в разных стеках может
быть разное, а значение переменной Top одно. Я просто хочу написать функцию(GetNum()), которая возвращает кол-во элементов в вызывающем объекте.
0
|
25 / 25 / 3
Регистрация: 06.03.2010
Сообщений: 59
|
|
01.09.2010, 23:19 | 14 |
Какой смысл делать класс с двумя одинаковыми стеками? Делаешь класс с одним стеком и с одним извиняюсь топом, потом делаешь сколько угодно объектов и в каждом будет свой стек с своим топом.
1
|
Каратель
|
||||||
01.09.2010, 23:36 | 15 | |||||
1
|
Модератор
12459 / 7483 / 1754
Регистрация: 25.07.2009
Сообщений: 13,762
|
||||||
01.09.2010, 23:50 | 16 | |||||
Вот и я о том же думаю...
NikolaWhite, Вы этими двумя "стеками" чего добиться хотите?
2
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
02.09.2010, 04:57 | 17 |
Если уж сильно надо знать размер стека, то ИМХО лучше завести для него поле-счетчик в классе, чем каждый раз перебирать все его элементы
Ну а если стек реализован в виде массива, то тогда и вышеупомянутые решения сойдут
0
|
Модератор
12459 / 7483 / 1754
Регистрация: 25.07.2009
Сообщений: 13,762
|
|
02.09.2010, 09:43 | 18 |
Я в умной книжке читал рассуждения по поводу размеров списков, стеков, очередей и прочих нестабильных субстанций Букв там было много, но в общей сложности всё сводилось к тому, на сколько часто нужно получать количество элементов в контейнере. Если эта величина нужна постоянно, то разумнее держать переменную с размером и корректировать её значение при добавлении/удалении элементов. Если сведения о количестве элементов - вещь особо не востребованная, то наоборот накладнее поддерживать в актуальном состоянии счётчик, а при необходимости просто элементы посчитать. Опять же решение сильно зависит от предполагаемых размеров контейнера. Если элементов будет много, то даже время от времени их пересчитывать - долгая процедура. С другой стороны количество элементов в стеке или очереди редко интересно. Обычно программа работает по той логике, что пока они (элементы) там (в стеке/очереди) есть, нужно с ними что-то делать...
0
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
02.09.2010, 10:25 | 19 |
0
|
246 / 178 / 47
Регистрация: 14.06.2010
Сообщений: 422
|
|
02.09.2010, 18:04 [ТС] | 20 |
Easybudda спасибо конечно,но ваш код сложноват для меня Я всего третью неделю С++ изучаю.Только подчерпнул павильный синтаксис для функций IsFull() и IsEmpty().
Благодаря этому благородному сообществу разобрался я со стеками(почти).Спасибо еще раз за помощь Осталось назначить для каждого объекта свой размер массива.... я всяко перепробовал. Буду очень признателен.
0
|
02.09.2010, 18:04 | |
02.09.2010, 18:04 | |
Помогаю со студенческими работами здесь
20
Подсчитать количество элементов в стеке Подсчитать количество элементов в стеке Подсчитать количество элементов в стеке Реализовать операции со стеком в массиве. Количество элементов в стеке должно соответствовать длине массива Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |