Loading...
kimusubi avatar kimusubi 14 Точки

Преминаване на курса с Java

Здравейте,
предлагам да се преброим/съберем хората, които мислим да изкараме курса с решаване на задачите с Java. Така ще може да си помагаме при нужда и да обсъждаме евентуални специфики при решаването на задачите.

Поздрави

Тагове:
9
Структури от данни и алгоритми 30/06/2015 09:03:43
krach avatar krach 65 Точки

Здравейте, искам да попитам как е като време изпълнението на задача 2 от последното домашно.

За въвеждането на 500 000 записа с рандом генерирани стойности при един вариант на задаване на цена от 0 до 100 ми дава като време 22 секунди и съответно при 10 000 търсения като горната и долната граница пак се генерират рандом към 14 секунди. А като задам въвежданата цена да е между 0 и 1000 времето за въвеждане пада на 0.78~ секудни а за търсене на 1.314~

Пускам линк към домашното, за сега първите 2 съм направил само.

https://github.com/krachunov/homeWork7/tree/master/HomeWork7/src

0
dim4o avatar dim4o 288 Точки

Ако правилно разбирам ти се чудиш защо като увеличаваш price range-а времето ти намалява вместо да расте. Това ли е въпросът ти?

0
krach avatar krach 65 Точки

Не ясно ми е защо намалява. Когато задам цена от 0 до 100, всичките 500 000 елемента се разпределят на слотове от 0 до 100 (за всяка възможна цена в този диапазон) и съответно във всеки слот има лист за продуктите с еднаква цена. Нали обхождането пък след намирането на дадената цена, всеки лист е много по голям и е нужно повече време О(n). Със увеличаването на цената се разпределят по равномерно.

Питането ми по - скоро е, дали е достатъчно бързо и дали коректно съм изпълнил условието за "Bag".

0
dim4o avatar dim4o 288 Точки

Според мен това за от 0 до 100 цена е доста бавно. Вероятно заради Contains на листа се бави генерирането. Ако си сигурен, че добавяш уникални продукти може и да не ти трябва. Освен това във findPriceRange() обхождаш целия списък почти винаги. Може би трябва да дадеш break като стигнеш LIMIT. В конкретния случай имаш средно по 5000 продукта на един такъв List, което доста натежава.

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