DEV Community

Cover image for 🧠 Day 9 β€” Back After 34 Days! Restarting My DSA + System Design Journey πŸš€
I.K
I.K

Posted on

🧠 Day 9 β€” Back After 34 Days! Restarting My DSA + System Design Journey πŸš€

After a 34-day drought, I’m officially back in the grind β€” and it feels good to get the rhythm going again. πŸ’ͺ

🧩 DSA Problems [1 hr]

Problem: Find Resultant Array After Removing Anagrams (LeetCode 2273)

This was a nice warm-up to shake off the rust β€” not too complex, but a solid logic-based question.

🧠 Idea

Iterate through the list, and only keep a word if its sorted characters differ from the previous one’s sorted characters (meaning it’s not an anagram).

πŸ’» Code
class Solution(object):
def removeAnagrams(self, words):
ans = [words[0]]
for i in range(1, len(words)):
a, b = sorted(words[i]), sorted(ans[-1])
if a != b:
ans.append(words[i])
return ans

⚑ Takeaways

Used sorted strings to detect anagrams efficiently.

Perfect reminder that simplicity > cleverness β€” clean logic wins.

Great re-entry problem to rebuild problem-solving momentum.

πŸ— System Design β€” Roadmap.sh [1 hr]
🌐 Topic: Availability in Numbers

Availability is all about how long a service stays up and running β€” usually expressed in number of 9s.

Level Uptime % Max Downtime Per Year
3 Nines 99.9 % 8 h 41 min 38 s
4 Nines 99.99 % 52 min 9.8 s

Even one extra β€œ9” massively cuts downtime.

βš™οΈ Availability in Sequence vs Parallel

In Sequence

Availability drops because both components must work.

Total = A(Foo) Γ— A(Bar)

Example: 99.9 % Γ— 99.9 % = 99.8 %.

In Parallel

Availability rises since one component can cover for another.

Total = 1 – (1 – A(Foo)) Γ— (1 – A(Bar))

Example: 99.9 % each β‡’ 99.9999 %.

You can experiment with numbers here β†’ uptime.is calculator
.

🧩 Reflection

Coming back after a break reminded me that availability applies to humans too: when one part of your routine goes down, redundancy (habits, structure, accountability) helps bring it back up. πŸ˜‰

πŸ’¬ Final Thoughts

βœ… Day 9 done!
It’s not about never falling off β€” it’s about coming back stronger.

Key takeaways:

Keep DSA problems light to rebuild momentum.

Revisit System Design numbers to solidify intuition.

Progress > Perfection β€” always.

🀝 Let’s Connect

Have you ever taken a break and struggled to restart your learning streak?
Drop a πŸ” if you’ve ever had to β€œreplicate” your own discipline!

Top comments (0)