Research Article

HKC: An Algorithm to Predict Protein Complexes in Protein-Protein Interaction Networks

Pseudocode 2

Procedure Cluster Finding.
Input:
 PPI network (an indirect simple graph):
 Node score threshold: T1 and T2
 Cohesion threshold: T3
Output:
 The predicted protein clusters: Clusters
Call Scoring
Call ClusterFinding
Call Filtering
// step2: Cluster finding
Procedure ClusterFinding
S = Sort( ) // sort all nodes descendingly according to node score, for nodes
      // with the same score put the one with higher degree ahead
n = the first node in S
Clusters = a empty list of cluster
while is not the last node in S do
  if is not seen then
   C = hkc(neighborhood(n))
   for all node q in C do
    if is seen or score(q) < score(n)*T1 then
     remove q in C
    end if
   end for
   mark all nodes in C seen
   for all node m in C do
    if m is expanded then continue
    for all i in neighbors of m do
     co = the cohesion between i and C
     if score(i) >= score(m)*T1  and
      score(i) <= score(m)*T2  and
      co >= T3  then
       add i to C
     end if
    end for
    mark m expanded
   end for
   add C to Clusters
  end if
  n = the next node of n in S
end while
end procedure