Въпросче за Java

59 отговора 0 прегледа
#1

Въпросче за Java

Имаме редица с интеджери. Да се намери онзи, което се среща най-често.

В PHP кода е два реда, но гледам че в езика от високо ниво, трябва да се пишат два листа за същото. Някой знае ли някоя 'фатка това да стане по-лесно?

Отговор
в отговор на croesus #2

Re: Въпросче за Java

Е чак пък два листа. Тъпчеш в интовете в мап с ключ инта и стойност срещанията, сортираш по срещанията и вадиш за ушите първия/последния според дали си сортирал низходящо или възходящо.

I have sold less books on sex than Stephen Hawking has on physics -- Madonna
Отговор
в отговор на croesus #3

Re: Въпросче за Java

[линк]

чети и дишай по-леко
Отговор
в отговор на croesus #4

Re: Въпросче за Java

Два листа? За толко години от теб програмист не стана...

Урсула ТИР ерген село чекия
Отговор
в отговор на evlampi_popdimitrov #5

Re: Въпросче за Java

Ако сортира нещо, мап не му трябва, може да сортира оригиналния списък и от там да преброи кой се среща най често. Нема си купувам от теб дебъгера за айпад развойната среда, мажеш като Рамбо.

Урсула ТИР ерген село чекия
Отговор
в отговор на synergie #6

Re: Въпросче за Java

Дървени философии

I have sold less books on sex than Stephen Hawking has on physics -- Madonna
Отговор
в отговор на Pechenia #7

Re: Въпросче за Java

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

Отговор
в отговор на evlampi_popdimitrov #8

Re: Въпросче за Java

Без сорт стана. Със сорт - N*LOG(N). Без сорт - N

Отговор
в отговор на croesus #9

Re: Въпросче за Java

Че не виждаш сорта или формално не се казва така не значи че го няма, за да намериш макса на срещанията трябва по някакъв начин да превъртиш всички елементи през логика за сравняване тоест реално имаш форма на сорт, не става с магия

I have sold less books on sex than Stephen Hawking has on physics -- Madonna
Отговор
в отговор на croesus #10

Re: Въпросче за Java

ако не ти е минал таймаута, изтрий го това че ме е срам да го чета, стар участник си




NE SUTOR ULTRA CREPIDAM
Отговор
в отговор на evlampi_popdimitrov #11

прав е прав е

за какво ти е мап, ако ще сортираш, или за какво ще сортираш щом имаш мап?
още докато тъпчеш в мапа, проверяваш дали текущия елемент не е задминал стария фаворит. ако го е задминал, той става фаворит. последния фаворит е твоя човек.




NE SUTOR ULTRA CREPIDAM
Отговор
в отговор на zaphod #12

Re: прав е прав е

"още докато тъпчеш в мапа, проверяваш дали текущия елемент не е задминал стария фаворит"

Да, в случая на търсене на мин/макс срещания това може да се направи понеже те интересува само един елемент. Но като цяло тоя тип задачи се свеждат до трансформиране на редицата в мап и сортиране по някакъв критерий което е по-малко от два листа код дори в по-общия случай на интерес към всички елементи даже на по-стари версии на джавата което е оригиналното оплакване

I have sold less books on sex than Stephen Hawking has on physics -- Madonna
Отговор
в отговор на evlampi_popdimitrov #13

Re: прав е прав е

сортиран масив от двойки==мап, ако ще се сортира, по-добре масив, че е по-бърз. аз от как почнах в хаоса мап не съм ползвал, само сортирани масиви от двойки ключ-стойност, реално истински мап ти трябва само ако мешаш добавяне и търсене, щото добавянето в сортиран масив е йебем ти мртву сестру у ладно дупе




NE SUTOR ULTRA CREPIDAM
Отговор
в отговор на zaphod #14

Re: прав е прав е

А, под мап нямам предвид конкретен тип, дали ще е масив от двойки или некъв вид хеш таблица или ще си го избира рънтайма е въпрос на реализация. Примерно в дотнета можеш sql синтаксис да ползваш - from i in ints group i by i into g orderby g.Count() descending и не те ебе как е имплементирано отдолу, умните тикви са го измислили. В модерната джава и даже це плюс пляс също може да се прави нещо наподобяващо това с новите библиотеки

I have sold less books on sex than Stephen Hawking has on physics -- Madonna
Отговор
в отговор на zaphod #15

Re: Въпросче за Java

Само програмистът забеляза. И аз не бях обърнал внимание.

Отговор
в отговор на croesus #16

Re: Въпросче за Java

Ропчето без амбиции. Документирало си е личния живот в най-малки детайли. Всеки може да види до какво води това.
Ако това се води програмист - аз не искам да имам общо.

Цитат: Разкажете на всички. tiny.cc/mkc1ay превод bit.ly/2kLVdly
Отговор
в отговор на croesus #17

голямото О и здравия разум

меринджейски мислещите приемат, че колкото голямото О е по-малко, толкова по-добре

което в повечето случаи е голяма глупост

не случайно до скоро в стандартнара ц++ библиотека имаше само мапове с О лог(н)
в случая всяка итерация е просто проследяване на указател и сравняване и за всички хора по света итерациите са само 33
(в контекста на тая задача, ако използваш такъв мап, той си е сортиран )

в много случаи алгоритмите с О(0) или лапат яко памет или са толкова бавни (щото например се подпичкват с битове), че за разумно N е по-добре да се използва алгоритъм со О(логН) или даже О(Н)

обаче друго си е да кажеш на меринджрйчето "направих го с О(0)

Отговор
в отговор на rabin #18

Re: Въпросче за Java

нАуката не може да го обясни, но по някакъв начин, участниците във форума знаят много повече детайли за твоя личен живот, отколкото за моя, нищо че влизаш през тор, не ползваш гейбук, и вземаш всички мерки за прайваси, а аз поне два пъти съм пускал директно името си че дори и линк към снимки от гейбука май. аз не надавам ухо на дългите ви препирнни с ламбито и джефтито, ама колкото и да не надава ухо човек, все някак вижда че те бъзикат за неща от личния живот, а не за глупави грешки в кода или нещо такова. какво би казал ламбито там за мада нейча и чувството и за хумор, а ? :)




NE SUTOR ULTRA CREPIDAM
Отговор
в отговор на ~@!$^%*amp;()_+ #19

Re: голямото О и здравия разум

да де, ама в меренето на О влизат всички ресурси (и паметта), само новобранчетата мерят О по времето и нищо друго. тъй че ако кажеш на меринджея О(1) и той малко поназнайва, може да си спечелиш черна точка.




NE SUTOR ULTRA CREPIDAM
Отговор
в отговор на zaphod #20

Re: Въпросче за Java

маминто па се е озлобил нещо и иде тук търси го напсува некой. иначе аз не го ебавам, сал го цитирам и той се мета като шаран. ламби го ебава, ама кво очакваш от басист.

Ако е писано - може и да се задомя, но не на всяка цена.
Отговор