За последние 24 часа нас посетили 234054 программиста и 1739 роботов. Сейчас ищут 1855 программистов ...

Алгоритм A*

Тема в разделе "Прочие вопросы по PHP", создана пользователем Fusix, 9 апр 2011.

  1. Fusix

    Fusix Активный пользователь

    С нами с:
    22 фев 2010
    Сообщения:
    67
    Симпатии:
    0
  2. YSandro

    YSandro Старожил

    С нами с:
    7 апр 2011
    Сообщения:
    2.523
    Симпатии:
    2
    Там написано
    Это значит, что тебе нужно либо самому это сделать, либо заплатить тому, кто возьмется.
     
  3. Fusix

    Fusix Активный пользователь

    С нами с:
    22 фев 2010
    Сообщения:
    67
    Симпатии:
    0
    А подсказать можете?
     
  4. YSandro

    YSandro Старожил

    С нами с:
    7 апр 2011
    Сообщения:
    2.523
    Симпатии:
    2
    Дык, а что подсказывать? Это надо садиться проанализировать всё и делать. Это работа.
    Как объявлять списки и т.д. - это базовый уровень.
     
  5. Fusix

    Fusix Активный пользователь

    С нами с:
    22 фев 2010
    Сообщения:
    67
    Симпатии:
    0
    Массив ведь не спикок...
     
  6. Fusix

    Fusix Активный пользователь

    С нами с:
    22 фев 2010
    Сообщения:
    67
    Симпатии:
    0
    Как например в $array[0] сохранить сразу х и у
     
  7. YSandro

    YSandro Старожил

    С нами с:
    7 апр 2011
    Сообщения:
    2.523
    Симпатии:
    2
    Вот, конкретный хороший вопрос.
    Код (Text):
    1. $array[0] = array($x,$y);
    2. //или
    3. $array[0] = array('x'=>$x,'y'=>$y);
    В первом варианте придется к x,y обращаться, как $array[0][0],$array[0][1], а во втором $array[0]['x'],$array[0]['y'], что удобней.
     
  8. Padaboo

    Padaboo Старожил
    Команда форума Модератор

    С нами с:
    26 окт 2009
    Сообщения:
    5.242
    Симпатии:
    1
    зачем вторая тема?
     
  9. Fusix

    Fusix Активный пользователь

    С нами с:
    22 фев 2010
    Сообщения:
    67
    Симпатии:
    0
    Спасибо.
     
  10. Fusix

    Fusix Активный пользователь

    С нами с:
    22 фев 2010
    Сообщения:
    67
    Симпатии:
    0
    Тут именно A*
     
  11. ExDragon

    ExDragon Активный пользователь

    С нами с:
    18 дек 2010
    Сообщения:
    76
    Симпатии:
    0
    а зачем это? на PHP? это удобнее сделать на С или на С++ =)
     
  12. Fusix

    Fusix Активный пользователь

    С нами с:
    22 фев 2010
    Сообщения:
    67
    Симпатии:
    0
    Нужно для веба
     
  13. Vladson

    Vladson Старожил

    С нами с:
    4 фев 2006
    Сообщения:
    4.040
    Симпатии:
    26
    Адрес:
    Estonia, Tallinn
    Я бы сократил вопрос... Просто
    Просто если для самообразования то помощь тут будет мешать только, если есть намерение применить куда либо то лучше писать не на РНР
     
  14. ExDragon

    ExDragon Активный пользователь

    С нами с:
    18 дек 2010
    Сообщения:
    76
    Симпатии:
    0
    скажите зачем мне стало интересно..
    реализовать хм для начало нужно сделать область действий X Y координаты
    сделать массу проверок на каждую ячейку... О_0 блин это сделать на PHP почти невозможно =)
     
  15. Fusix

    Fusix Активный пользователь

    С нами с:
    22 фев 2010
    Сообщения:
    67
    Симпатии:
    0
    Пои идее нагрузка должно быть не высокая...
     
  16. Fusix

    Fusix Активный пользователь

    С нами с:
    22 фев 2010
    Сообщения:
    67
    Симпатии:
    0
    Код (Text):
    1. {
    2. global $open_list, $blocks_list, $parent_list;
    3.  
    4. $reset_x = $x;
    5. $reset_y = $y;
    6.  
    7.     for ($i = 0; $i <= 4; $i++)
    8.     {
    9.         if($i == 1) $x--;
    10.         if($i == 2) $x++;
    11.         if($i == 3) $y--;
    12.         if($i == 4) $y++;
    13.  
    14.         if($blocks_list[$x][$y] != 1)
    15.         {
    16.             $open_list[$x][$y] = 1;
    17.             $parent_list[$x][$y] = $reset_x.'x',$reset_y;  // Разделять Explode();
    18.         }
    19.  
    20.         $x = $reset_x;
    21.         $y = $reset_y;
    22.     }
    23. }
    Написал первую функцию для заполнения открытого списка. Может есть замечания?
     
  17. ExDragon

    ExDragon Активный пользователь

    С нами с:
    18 дек 2010
    Сообщения:
    76
    Симпатии:
    0
    покажи весь код
    for ($i = 0; $i < 4; $i++)
     
  18. Fusix

    Fusix Активный пользователь

    С нами с:
    22 фев 2010
    Сообщения:
    67
    Симпатии:
    0
    Как искать эти величины, зная координаты начала и конца пути?
     
  19. ExDragon

    ExDragon Активный пользователь

    С нами с:
    18 дек 2010
    Сообщения:
    76
    Симпатии:
    0
    там же демо версия на С++ есть