# Encyclopedia of Algorithms

2016 Edition
| Editors: Ming-Yang Kao

# Color Coding

• Noga Alon
• 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) }$$

## Keywords

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

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–304
2. 2.
Alon N, Yuster R, Zwick U (1995) Color coding. J ACM 42:844–856
3. 3.
Alon N, Yuster R, Zwick U (1997) Finding and counting given length cycles. Algorithmica 17(3):209–223
4. 4.
Björklund A, Husfeldt T (2003) Finding a path of superlogarithmic length. SIAM J Comput 32(6):1395–1402
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–922
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–544
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–254
12. 12.
Naor J, Naor M (1993) Small-bias probability spaces: efficient constructions and applications. SIAM J Comput 22(4):838–856
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–170
14. 14.
Plehn J, Voigt B (1990) Finding minimally weighted subgraphs. Lect Notes Comput Sci 484:18–29
15. 15.
Robertson N, Seymour P (1986) Graph minors. II. Algorithmic aspects of tree-width. J Algorithms 7:309–322
16. 16.
Schmidt JP, Siegel A (1990) The spatial complexity of oblivious k-probe hash functions. SIAM J Comput 19(5):775–786
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–144
18. 18.
Sharan R, Ideker T (2006) Modeling cellular machinery through biological network comparison. Nat Biotechnol 24:427–433
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:199