* [BFS non-directed SCC](bfs_scc.java) - Adjacency-list BFS implementation to identify SCC in a non-directed graph (graph traversal and SCC non-directed only)
* [BFS non-weighted SSC](bfs_shortest_path.java) - Adjacency-list BFS for shortest path in a non-weighted graph (SSC non-weighted)
* [LIS](LIS.java) - A Longest Increasing Sequence algorithm implmentation (substring)
* [Collections Count If](collections_count_if.java#L46) - Counts elements for which predicate p returns true (collection utility)
### Third party code
* [Couple](Couple.java) - A AOSP class to handle 2-tuples
* [Segment Tree](SegmentTree.java) - A Segment Tree data structure implementation derived from Segewick and Wayne's Algorithms, 4th ed. book
* [ValueThenKeyComparator](ValueThenKeyComparator.java) - A Comparator that sorts Map.Entry objects with Comparable keys and values, first by value, then by key
* [FastScanner](FastScanner.java) - Fast Input from STDIN in Java
* [FastPrint](FastPrint.java) - Fast Output from STDOUT in Java
### Example code
* [Activity Minimum Gap Schedulling](minimum_gap_schedulling.java) - Activity Minimum Gap Schedulling implementation (sorting)
* [Knapsack](knapsack.java) - Knapsack approximation solution using conditional binary search (search and optimization)