Encyclopedia of Algorithms

2016 Edition
| Editors: Ming-Yang Kao

Color Coding

  • Noga AlonEmail author
  • Raphael Yuster
  • Uri Zwick
Reference work entry
DOI: https://doi.org/10.1007/978-1-4939-2864-4_76

Years and Authors of Summarized Original Work

  • 1995; Alon, Yuster, Zwick

Problem Definition

Color coding [2] is a novel method used for solving, in polynomial time, various subcases of the generally NP-Hard subgraph isomorphism problem. The input for the subgraph isomorphism problem is an ordered pair of (possibly directed) graphs (G,H). The output is either a mapping showing that H is isomorphic to a (possibly induced) subgraph of G, or false if no such subgraph exists. The subgraph isomorphism problem includes, as special cases, the HAMILTON-PATH, CLIQUE, and INDEPENDENT SET problems, as well as many others. The problem is also interesting when H is fixed. The goal, in this case, is to design algorithms whose running times are significantly better than the running time of the naïve algorithm.

Method Description

The color coding method is a randomized method. The vertices of the graph \( { G = (V,E) } \)


Finding small subgraphs within large graphs 
This is a preview of subscription content, log in to check access.

Recommended Reading

  1. 1.
    Alon N, Goldreich O, Håstad J, Peralta R (1992) Simple constructions of almost k-wise independent random variables. Random Struct Algorithms 3(3):289–304MathSciNetzbMATHCrossRefGoogle Scholar
  2. 2.
    Alon N, Yuster R, Zwick U (1995) Color coding. J ACM 42:844–856MathSciNetzbMATHCrossRefGoogle Scholar
  3. 3.
    Alon N, Yuster R, Zwick U (1997) Finding and counting given length cycles. Algorithmica 17(3):209–223MathSciNetzbMATHCrossRefGoogle Scholar
  4. 4.
    Björklund A, Husfeldt T (2003) Finding a path of superlogarithmic length. SIAM J Comput 32(6):1395–1402MathSciNetzbMATHCrossRefGoogle Scholar
  5. 5.
    Chen J, Lu S, Sze S, Zhang F (2007) Improved algorithms for path, matching, and packing problems. In: Proceedings of the 18th ACM-SIAM symposium on discrete algorithms (SODA), pp 298–307Google Scholar
  6. 6.
    Eppstein D (1999) Subgraph isomorphism in planar graphs and related problems. J Graph Algorithms Appl 3(3):1–27Google Scholar
  7. 7.
    Fellows MR (2003) New directions and new challenges in algorithm design and complexity, parameterized. In: Lecture notes in computer science, vol 2748, pp 505–519Google Scholar
  8. 8.
    Flum J, Grohe M (2004) The parameterized complexity of counting problems. SIAM J Comput 33(4):892–922MathSciNetzbMATHCrossRefGoogle Scholar
  9. 9.
    Fredman ML, Komlós J, Szemerédi E (1984) Storing a sparse table with O(1) worst case access time. J ACM 31:538–544MathSciNetzbMATHCrossRefGoogle Scholar
  10. 10.
    Hüffner F, Wernicke S, Zichner T (2007) Algorithm engineering for color coding to facilitate signaling pathway detection. In: Proceedings of the 5th Asia-Pacific bioinformatics conference (APBC), pp 277–286Google Scholar
  11. 11.
    Monien B (1985) How to find long paths efficiently. Ann Discret Math 25:239–254MathSciNetzbMATHGoogle Scholar
  12. 12.
    Naor J, Naor M (1993) Small-bias probability spaces: efficient constructions and applications. SIAM J Comput 22(4):838–856MathSciNetzbMATHCrossRefGoogle Scholar
  13. 13.
    Papadimitriou CH, Yannakakis M (1996) On limited nondeterminism and the complexity of the V-C dimension. J Comput Syst Sci 53(2):161–170MathSciNetzbMATHCrossRefGoogle Scholar
  14. 14.
    Plehn J, Voigt B (1990) Finding minimally weighted subgraphs. Lect Notes Comput Sci 484:18–29MathSciNetzbMATHCrossRefGoogle Scholar
  15. 15.
    Robertson N, Seymour P (1986) Graph minors. II. Algorithmic aspects of tree-width. J Algorithms 7:309–322MathSciNetzbMATHCrossRefGoogle Scholar
  16. 16.
    Schmidt JP, Siegel A (1990) The spatial complexity of oblivious k-probe hash functions. SIAM J Comput 19(5):775–786MathSciNetzbMATHCrossRefGoogle Scholar
  17. 17.
    Scott J, Ideker T, Karp RM, Sharan R (2006) Efficient algorithms for detecting signaling pathways in protein interaction networks. J Comput Biol 13(2):133–144MathSciNetzbMATHCrossRefGoogle Scholar
  18. 18.
    Sharan R, Ideker T (2006) Modeling cellular machinery through biological network comparison. Nat Biotechnol 24:427–433CrossRefGoogle Scholar
  19. 19.
    Shlomi T, Segal D, Ruppin E, Sharan R (2006) QPath: a method for querying pathways in a protein-protein interaction network. BMC Bioinform 7:199CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media New York 2016

Authors and Affiliations

  1. 1.Department of Mathematics and Computer ScienceTel-Aviv UniversityTel-AvivIsrael
  2. 2.Department of MathematicsUniversity of HaifaHaifaIsrael
  3. 3.Department of Mathematics and Computer ScienceTel-Aviv UniversityTel-AvivIsrael