在java中调查带有链接列表的队列

时间:2015-11-12 15:46:38

标签: java

..我必须在java中使用一段代码,但我不了解它的某些部分。

代码使用来自另一个文档中的简单队列的方法(。isEmpty()等)

支持调查一个数组(在每个地址中都有链接列表)并使用其值执行某种处理。

问题是我不知道标记[s] = true; 标记[tv] = true; parent [tv] = k ; 是,它们如何作为变量(?)

void BFS(int s) 
{
     Queue<Integer> Q = new Queue<Integer>();  
     marked[s] = true;
     Q.put(s);
     while (!Q.isEmpty())
     {
         k = Q.get();
         for (Node t = adj[k]; t != null; t = t.next)
             if (!marked[t.v]) {
                 marked[t.v] = true;
                 parent[t.v] = k;
                 Q.put(t.v); 
             }
         }
     }
}

编辑:我写了矩阵而不是数组,抱歉。

1 个答案:

答案 0 :(得分:1)

SSLContext marked[]parent都是数组。

从代码中可以看出,

adj是一个t对象。该节点对象将具有名为Node的成员变量。因此,v会在t.v对象v中获取变量Node的值。

t在数组中找到索引等于marked[t.v]的元素。例如如果t.v等于0,那么您将获取t.v,这是marked[0]数组中的第一个元素。