Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 29, средняя оценка - 4.69
Valli1
4 / 4 / 0
Регистрация: 14.09.2012
Сообщений: 64
#1

Волновой алгоритм - C++

12.02.2013, 21:34. Просмотров 3917. Ответов 25
Метки нет (Все метки)

Подскажите пожалуйста, на сколько сложно изготовить из матрицы
C++
1
2
3
0000
0000
0000
напр.
C++
1
2
3
4
4345
3234
2123
3234
Только при помощи обычных циклов.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.02.2013, 21:34     Волновой алгоритм
Посмотрите здесь:

Волновой алгоритм - C++
Доброго времени суток, дорогие форумчане. Никак не додумаю волновой алгоритм, помогите, кто чем может: файл - матрица целых чисел, где...

Волновой алгоритм - C++
Здравствуйте, очень прошу помочь с реализацией волнового алгоритма только лишь с помощью матрицы весов неориентированного графа. Объясните...

Волновой алгоритм - C++
Нужно найти кратчайший путь в лабиринте размерностью 10х10 , и выводить ответ. Помогите

Волновой алгоритм - C++
Нужно реализовать волновой алгоритм поиска кратчайшего пути на поле 20*20, причем координаты начала и конца вводятся пользователем,...

Лабиринт - волновой алгоритм - C++
Помогите пожалуйста. Я написал код, который мне выведет на экран кратчайший путь... Но чего-то не хватает.... Может создать цикл с...

Волновой алгоритм (шахматы, конь) - C++
Всем привет! Пытался написать волновой алгоритм для нахождения кратчайшего пути коня на шахматной доски из A->B. Но что-то у меня...

Tiled Map и волновой алгоритм - C++
Делаю игру пакман. Нашла, что для привидений хорошо подходит волновой алгоритм. Нашла примеры реализации -все они завязаны на двумерных...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
iama
1250 / 975 / 49
Регистрация: 30.07.2010
Сообщений: 5,297
12.02.2013, 23:30     Волновой алгоритм #16
Valli1, вы меня, конечно, простите, все мы когда-то начинали, но нельзя же такое людям показывать!
Valli1
4 / 4 / 0
Регистрация: 14.09.2012
Сообщений: 64
12.02.2013, 23:35  [ТС]     Волновой алгоритм #17
Wolkodav, а я всего-то хотел сказать, что можно сделать всё много проще и довольно линейно.
Проще мне не надо. Нужно именно волновое заполнение."Мы легких путей не ищем"(с)
Какое такое, что бы вы посоветовали?Я конечно понимаю Вашу иронию Вы бы в 2 строчки решили. Все работает, немного его обобщить можно.
iama
1250 / 975 / 49
Регистрация: 30.07.2010
Сообщений: 5,297
12.02.2013, 23:41     Волновой алгоритм #18
Valli1, у вас на то, что вы называете "волновым алгоритмом" тоже совершенно непохоже.

Для начала почитайте про обход в ширину, раз именно это вам нужно.
Valli1
4 / 4 / 0
Регистрация: 14.09.2012
Сообщений: 64
12.02.2013, 23:48  [ТС]     Волновой алгоритм #19
Цитата Сообщение от iama Посмотреть сообщение
Valli1, у вас на то, что вы называете "волновым алгоритмом" тоже совершенно непохоже.

Для начала почитайте про обход в ширину, раз именно это вам нужно.
Но там vector и прочее, чего я еще не знаю. Наверняка все можно заполнить вообще одной функцией.
iama
1250 / 975 / 49
Регистрация: 30.07.2010
Сообщений: 5,297
12.02.2013, 23:49     Волновой алгоритм #20
Valli1, для начала нужно уметь писать очередь. Умеете?
Wolkodav
602 / 455 / 32
Регистрация: 18.09.2012
Сообщений: 1,685
12.02.2013, 23:53     Волновой алгоритм #21
В ширину можно и без вектора, лишь бы очередь смогли написать, не важна на какой базе.
Valli1
4 / 4 / 0
Регистрация: 14.09.2012
Сообщений: 64
12.02.2013, 23:57  [ТС]     Волновой алгоритм #22
C++
1
2
3
4
5
int x = 2, y = 1;
 
for (int i = 0; i < 4; i++)
  for (int j = 0; j < 4; j++)
    a[i][j] = abs(i - x) + abs(j - y) + 1;
Вот это супер и что вы сразу это придумали?
iama
1250 / 975 / 49
Регистрация: 30.07.2010
Сообщений: 5,297
12.02.2013, 23:58     Волновой алгоритм #23
Valli1, ну да. А что вас смущает?
Valli1
4 / 4 / 0
Регистрация: 14.09.2012
Сообщений: 64
13.02.2013, 00:08  [ТС]     Волновой алгоритм #24
В ширину можно и без вектора, лишь бы очередь смогли написать, не важна на какой базе.
В смысле очередь?
iama
1250 / 975 / 49
Регистрация: 30.07.2010
Сообщений: 5,297
13.02.2013, 00:09     Волновой алгоритм #25
Valli1, вот.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.02.2013, 00:18     Волновой алгоритм
Еще ссылки по теме:

Волновой алгоритм поиска пути - C++
Добрый день. Реализую всем известный алгоритм поиска кратчайшего пути. Но не могу понять одну вещь. Пройдя волновым методам по...

Волновой алгоритм для двумерной матрицы - C++
Подскажите пожалуйста как реализовать правильно(и желательно быстро) потому что, нужно будет считать для 4х объектов. Вот код который я...

Волновой алгоритм - поиск минимального пути - C++
Доброго времени суток всем. Не могу въехать в алгоритм волновой для поиска минимального пути. Видел кучу примеров с готовым кодом, читал,...

Как написать волновой алгоритм для трехмерного лабиринта? - C++
Трехмерный лабиринт выглядит следующим образом На примере 3*3*3 Числа 0,1,2... секторы лабиринта -1 проходимые участки -2 стенки ...

Волновой или А* или Алгоритм ЛИ - C++
Как можно упростить и написать этот алгоритм, в книге вроде ясно понятно, что из точки А к точке Б идут волны, каждая первая порождает...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Valli1
4 / 4 / 0
Регистрация: 14.09.2012
Сообщений: 64
14.02.2013, 00:18  [ТС]     Волновой алгоритм #26
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <iostream>
 const int MAX=1000;
  struct queue {
  int end;     
  int start; 
  int elems[MAX];
  void push(int d);
  int pop();};
  int main()
{queue st={999,999,{0}};
st.push(5);
st.push(7);
int a=st.pop();
 
std::cout<< a;
system("pause");
return 0;
}
 
void queue::push(int d){
elems[end]=d;
end--;
}
int queue::pop(){
int a=elems[start];
return a;
start--;}
Вот вроде простейшая очередь, правильно реализовано?
Yandex
Объявления
14.02.2013, 00:18     Волновой алгоритм
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru