Category: Algorithms & Data structures

  • Fenwick tree (aka Binary Indexed Tree)

    Theory TopCoder – Binary Indexed Trees Algorithms Live – Fenwick tree Wikipedia – Fenwick tree Implementation in C++ Practice Kattis – Movie collection AtCoder – B Fenwick Tree

  • Disjoint Set Union (aka Union-Find)

    Theory Algorithms, 4th edition by Robert Sedgewick, Kevin Wayne 1.5   Case Study: Union-Find Union Find on Cubits.ai Implementation in C++ Practice https://atcoder.jp/contests/practice2/tasks/practice2_a

  • Isolate the rightmost (least-significant) bit

    Fast & elegant: Tests Output Brute force Output for the new version Practice 231. Power of Two 191. Number of 1 Bits Related concepts Two’s complement

  • Kadane’s algorithm

    I just learned about this algorithm, which is considered a dynamic programming approach. However, depending on the implementation, it might not resemble dynamic programming at all. Check out the implementation presented on Wikipedia: That does not look like dynamic programming to me. Now let’s look at the following implementation: Can you see it now? I’m…

  • Interesting programming problems

    The following problems were either difficult to solve, provided a valuable learning, or both. I’m putting them here so as not to forget a bout them. Drinks Three Pairwise Maximums FashionabLee Captain Flint and Crew Recruitment

  • Algorithms live, Episode 0 – Notes

    One of my goals this year is to catch up with Algorithms Live and as part of that, I’ll be posting my notes for each episode and possibly the solutions to the proposed problems. Episode https://www.youtube.com/watch?v=kPaJfAUwViYSorry, as of now I can’t embed this video. Proposed problems Above the median Solution Movie collection Solution That’s it.…

  • My C++ template for programming puzzles