Loading...
ivanmitkoff avatar ivanmitkoff 3 Точки

08. Browser History Upgrade (Stacks & Queues - Lab)

Здрайвейте!

Опитвам се да реша осма задача от лекцията за стекове и опашки, но не мога да стигна до решение, по-добро от 50/100 в Judge. frown
Моля за насоки къде бъркам

Благодаря предварително!

Кодът ми: клик.

Условие:

8. Browser History Upgrade

Extend "Browser History" with a "forward" instruction which visits URLs that were navigated away from by "back". Each forward instruction visits the next most-recent such URL. If a normal navigation happens, all potential forward URLs are removed until a new back instruction is given If the forward instruction can’t be executed, print "no next URLs".

Hints

  • Use the solution from Browser History
  • Use ArrayDequeue<> as queue to keep the forward pages
  • Use clear() method to reset the forward pages
  • Use addFirst() when adding page to the forward pages

Examples

Input

Output

forward

https//softuni.bg/

https//softuni.bg/trainings/courses

back

forward

https//softuni.bg/trainings/2056

back

forward

forward

https//softuni.bg/trainings/courses

Home

no next URLs

https//softuni.bg/

https//softuni.bg/trainings/courses

https//softuni.bg/

https//softuni.bg/trainings/courses

https//softuni.bg/trainings/2056

https//softuni.bg/trainings/courses

https//softuni.bg/trainings/2056

no next URLs

https//softuni.bg/trainings/courses

0
Java Advanced
KeepCoding avatar KeepCoding 554 Точки
Best Answer

Здравей, промених две неща в кода ти линк

Първото е проверката за това колко предмета има в "browserHistory". Проверката "browserHistory.size() < 1" означава при празен history да се изписва съобщението, но ако е точно 1 предмет, то тогава щеше да го махнеш и да направиш "peek" на празна колекция.

Другото е че не при "forward" командата. Представи си случай, в който някой ти наспами командата 100 пъти, когато колекцията не е празна. Ще се изписва първият предмет на колекцията всеки път. Т.е. трябва по някакъв начин да се движат нещата. 

0
ivanmitkoff avatar ivanmitkoff 3 Точки

Благодаря много! :)

0
ucko0o avatar ucko0o 3 Точки

Здравей, давам ти едно мое примерно решение:

https://pastebin.com/cVhMt5cE:

Ще се радвам, ако ти помогне да си намериш грешките.

 

Поздрави.

0
ivanmitkoff avatar ivanmitkoff 3 Точки

Благодаря! :)

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.