Премини към съдържанието

Препоръчан отговор


Добър ден! Искам да помоля за помощ с две задачи на с++. Едната е за стек и е следната: Да се състави програма, която създава динамичен стек, след което установява N-я от дъното елемент в стойност А, като изключва от стека първите N-1 от дъното елемента. Ето и кода, който съм написал до сега: https://pastebin.com/rH0cW2Wu

Задачата е почти направен, само не мога да сложа този елемент А на последно място в стека.

И другата задача е за граф: Да се състави дункция, която съобщава, дали в даде ориентиран граф има върхове от вида --> О <---

Сподели този отговор


Линк към този отговор
Сподели в други сайтове
преди 1 час, dnevniks написа:

Задачата е почти направен, само не мога да сложа този елемент А на последно място в стека.

Ама така както го представяш условието, то не ти се и иска. Като си махнал покриващите елементи, попваш го и пушваш А и готово.

За графа се решава така. Обхождаш аджасънси листа и намираш всички елементи, които ги има на две места. След това обхождаш така намерените елементи и които имат празен списък от връзки, са отговора на задачата. Ако няма нито един от тях без връзки, или изобщо няма такива с две входящи връзки, значи графа няма елементи от посочения вид.

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Да уточним кое е дъното на стека. Почват да слагаш числа в стека и последното сложено е върха на стека, а дъното според мене трябва да е под първото сложено число. За да можеш да работиш с първите числа, а не само с последното,  правиш друг стек, прехвърляш всички числа в него, от него махаш най-горните n числа, вкарваш А във вече празния първи стек и след това всички числа (ако има такива) останали във втория стек.  За да може да го направиш функциите push() и pop() трябва да не са вързани само за един стек, а да са написани така , че да могат да работят и с повече от един.

 

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Добавете отговор

Можете да публикувате отговор сега и да се регистрирате по-късно. Ако имате регистрация, влезте в профила си за да публикувате от него.

Гост
Напишете отговор в тази тема...

×   Вмъкнахте текст, който съдържа форматиране.   Премахни форматирането на текста

  Разрешени са само 75 емотикони.

×   Съдържанието от линка беше вградено автоматично.   Премахни съдържанието и покажи само линк

×   Съдържанието, което сте написали преди беше възстановено..   Изтрий всичко

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Добави ново...

Информация

Поставихме бисквитки на устройството ви за най-добро потребителско изживяване. Можете да промените настройките си за бисквитки, или в противен случай приемаме, че сте съгласни с нашите условия.