ВУЗ:
Составители:
Рубрика:
А.А. Андрианова, Л.Н. Исмагилов, Т.М. Мухтарова .
// поиск смежных вершин с v-ой
for(j=jj+1;j<g.n;j++)
if(x[j]==0 && g.a[v][j]>0
&& g.a[v][j]!= MAX_INT)
{
// найдена смежная вершина j
x[j]=k; // вершина включается в путь,
//добавляется длина дуги <v,j>
sum+=g.a[v][j];
if(j==b)
{
// если найдена конечная вершина пути
// печатаем найденный путь
nom=1;
while(true)
{
for(ii=0;ii<g.n;ii++)
if(x[ii]==nom)
{
printf("%d",ii+1);
break;
}
if(ii==t)
{
printf("sum=%d\n",sum);
break;
}
printf("->");
nom++;
}
// осуществляем возврат в предыдущую
// вершину, т.е. снимаем пометку с
// j-ой вершины и вычитаем длину
// ребра <v,j> из длины пути
x[j]=0;
sum-=g.a[v][j];
}
else
{
// конечная вершина не достигнута
// помещаем вершину v в стек,
// запоминаем найденную смежную
// вершину в jj
k++;
PushStack(st,v);
116
А.А. Андрианова, Л.Н. Исмагилов, Т.М. Мухтарова .
// поиск смежных вершин с v-ой
for(j=jj+1;j0
&& g.a[v][j]!= MAX_INT)
{
// найдена смежная вершина j
x[j]=k; // вершина включается в путь,
//добавляется длина дуги
sum+=g.a[v][j];
if(j==b)
{
// если найдена конечная вершина пути
// печатаем найденный путь
nom=1;
while(true)
{
for(ii=0;ii");
nom++;
}
// осуществляем возврат в предыдущую
// вершину, т.е. снимаем пометку с
// j-ой вершины и вычитаем длину
// ребра из длины пути
x[j]=0;
sum-=g.a[v][j];
}
else
{
// конечная вершина не достигнута
// помещаем вершину v в стек,
// запоминаем найденную смежную
// вершину в jj
k++;
PushStack(st,v);
116
Страницы
- « первая
- ‹ предыдущая
- …
- 114
- 115
- 116
- 117
- 118
- …
- следующая ›
- последняя »
