| imho.ws |
![]() |
|
|
|
# 1 |
|
Junior Member
Регистрация: 31.10.2002
Сообщения: 150
![]() |
какие операции выполняются быстрее?
имеем:
int[] a=new int[100]; boolean[] b=new boolean[100]; a[25]=-1; b[25]=true; 1-------------------- if (a[25]==-1)........; --------------------- 2-------------------- if (b[25])..............; --------------------- что быстрее: 1 или 2? в смысле какое условие проверится быстрее? ето всё в яве и на 16 мегагерц проце с 32 кб оперативки. ешё один вопрос, не такой важный, но вдруг у кого-нибудь будет классная идея ![]() имеется поле 10*10 квадратов и робот(лего, но ето не важно), который ездит по етому полю используя линии и 2 световых сенсора. в начале соревнования роботу передаются координаты перекрёстков на которых расположены "мины" и "сокровиша". задача: собрать все сокровиша не задев ни одной мины за минимальное время. сейчас мы просто вычисляем ближайшее сокровише и едем к нему( с помошью алгоритма дайкстры). остаётся решить travelling salesman problem на 32 кб оперативки ![]() может у кого есть идеи, как ето сделать ефективнее, чем сейчас? p.s. esli interesno http://callisto.informatik.fh-nuernberg.de/index.php?id=manhattan05 http://callisto.informatik.fh-nuernberg.de/index.php?id=manhattan-muenchen05 |
|
|
|
|
# 2 |
|
::VIP::
Регистрация: 15.05.2005
Адрес: Питер
Сообщения: 1 194
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Скорее всего второе, логические операции выполняются всегда быстрее. Просто в данном случае выигрыш в этом будет не очень большой, потому что обе операции выполняются за ничтожное время и по сравнению с другими на время их выполнения можно забить...
Хотя если этих операций ОЧЕНЬ много, то может во времени выигрыш небольшой и получится. Да, забыл, алгоритм Дейкстра точно не самый лучший, сейчас не помню, какой можно применить, подумаю...
__________________
Чтобы воля стала действующим началом, тело должно быть совершенным. |
|
|
|
|
# 3 |
|
Full Member
Регистрация: 25.11.2001
Адрес: Imho.ws
Сообщения: 941
![]() ![]() ![]() ![]() ![]() ![]() |
Етот алгоритм далеко не самий лутший, с другой сторони у тебя огранишена памят.
Алгоритм Дейкстры действително достаточно еффективен. Но !! он разработан для поиска пути в произволном графе, когда о структуре графа ничего неизвестно заранее. У тебя же известно што некоторие догоги "глухие" Попробуй лутше "волновой алгоритм", насколко я понял препятствия двигатся не могут, знашит пойдет. Правда не уверен што он будет лутше.
__________________
Когда умираешь, да еще так долго и трудно, очень хочется хоть немного насолить живым, просто невозможно удержаться от искушения! М.Фрай |
|
|
|
|
# 4 |
|
Advanced Member
Регистрация: 09.03.2004
Адрес: толстозадая Москва
Сообщения: 498
![]() ![]() ![]() ![]() |
1. В джаве происходит работа с объектами... принято различать простые типы и объекты. Такая проверка будет выполняться примерно одинаково по времени и по ресурсам, т.к. это массивы простых типов. И если мне не изменяет память то булька внутри байткодов классов эквивалентна int 1 или 0. но это на Java2SE. На эту тему нужно смотреть доки джавамашины, под которую идет кодинг и доки SDK на котором компилится байткод.
__________________
В нашей стране настаивать на кореньях, черной смородине, лимонных корках - гораздо эффективнее, чем на правах |
|
|
|
|
# 6 |
|
Advanced Member
Регистрация: 09.03.2004
Адрес: толстозадая Москва
Сообщения: 498
![]() ![]() ![]() ![]() |
хм... кстати тут на недавно прошедшей конференции в честь 10 летия джавы, была обалденно классно-полезная но жутко непонятная лекция на тему токой настройки джавамашин с помощью всяких разных ключиков, так вот там была такая фраза, что и гарбадж коллектор там оптимизировать можно для конкретных задач и джавамашину... можно при знании дела повысить эффективность (читай скорость) работы программы и эффективность работы джавамишины с памятью примерно на 30%...
__________________
В нашей стране настаивать на кореньях, черной смородине, лимонных корках - гораздо эффективнее, чем на правах |
|
|
|
|
# 7 | |
|
Advanced Member
Регистрация: 09.03.2004
Адрес: толстозадая Москва
Сообщения: 498
![]() ![]() ![]() ![]() |
Я таки нашел на _juga.ru ссылку по поводу типов данных... переведенная спецификация на первую версию джавамашины...
_http://www.uni-vologda.ac.ru/java/jvm/outline.htm Цитата:
__________________
В нашей стране настаивать на кореньях, черной смородине, лимонных корках - гораздо эффективнее, чем на правах |
|
|
|
|
|
# 8 |
|
Newbie
Регистрация: 24.09.2004
Сообщения: 42
![]() |
aramis какой у тебя крутой робот (с джавамашиной).
Советую не заниматься низкоуровневой оптимизацией, а поискать нормальный алгоритм. На яве (особенно на той, которая испольуется в телефонах и роботах) все очень медленно, поэтому тебя спасет только высокоуровневая оптимизация (хорошие алгоритмы). |
|
|