Sliding Window Algorithm