Blog

poj 1979 Red and Black

Solution to POJ 1979 Red and Black problem using depth first search algorithm. Complete C++ implementation with DFS traversal to count reachable black tiles from starting position.

June 28, 2018

LeetCode Solution: Manacher's Algorithm for Longest Palindromic String

Manacher's algorithm also known as马拉车algorithm is an efficient solution that reduces the time complexity of finding the longest palindromic substring to O(N). This article explains the core concepts including preprocessing with special characters handling odd and even length palindromes and implementing symmetry optimization in Go.

April 17, 2018

BUG Caused by Unbuffered Channels

A detailed analysis of a blocking issue caused by improper usage of unbuffered channels in concurrent programming. Explains how incorrect channel operations can lead to system deadlock and provides solutions for proper goroutine synchronization.

April 11, 2018

Distributed System Fundamentals

Learn the core concepts of Distributed System including storage, communication, and computation challenges. Understand scalability, performance, availability, and fault tolerance principles with partitioning and replication strategies.

April 6, 2018

Zero-Swap Sorting Google Interview Question

Google interview question about sorting an array using only swaps with zero element. Given an array of length n containing numbers 0 to n-1 in random order, sort it by swapping zero with other elements only.

March 29, 2018

Practicing TDD Testing APIs in Gin

Learn how to implement Test Driven Development for API testing in Go's Gin framework. This guide covers TDD benefits including improved code quality reduced bugs and faster development cycles with practical examples.

March 26, 2018

Handling Encoding Issues When Parsing XML Documents in Go

Learn how to properly parse non UTF-8 encoded XML documents in Go when working with RSS feeds and other XML formats. This guide provides practical code examples using xml.Decoder with proper charset handling.

March 10, 2018

SQL Fundamentals Quick Summary

Comprehensive SQL basics guide covering joins inner self and outer operations union statements insert commands table operations views transactions and database constraints including primary keys foreign keys unique constraints check constraints indexes and triggers.

November 4, 2017

Linux Process Memory Management Essentials

Learn essential Linux process and memory management concepts including kernel operations, context switching, system calls, and monitoring tools for effective system administration.

October 31, 2017

Linux Essentials: Cron Job Management

Learn how to create and manage Linux scheduled tasks using cron and crontab. This guide covers cron syntax, time formatting, special characters, and essential commands for automated task scheduling in Linux systems.

October 30, 2017