Saturday, May 14, 2022

Introduction To Sliding Window Technique.

Array রিলেটেড প্রবলেম সলভিং এর জন্য Sliding Window Technique জানা খুবই জরুরী। যেখানে Repetitive কাজ হয়, সেখানেই Sliding Window Technique ব্যবহার করে খুব সহজেই আমরা Time Complexity কমাইতে পারি। 

Repetitive বলতে মাঝে মাঝে দেখা যায় আমরা একটা প্রবলেম সলভ করতে এমন একটা সল্যুশনে পৌছাইছি যেখানে বারবার সেইম কাজ রিপিট হইতেছে, যেটা কিনা আমরা বাদ দিলেও আমাদের প্রবলেম টা সল্ভ করা সম্ভব।

সাধারনত Fixed সাইজের একটা Window/অংশ/Subarray/Substring নিয়ে 
Sliding Window কাজ করে থাকে। এই রিলেটেড প্রব্লেমে একটা ফিক্সড সাইজের Window দেয়া থাকে, এটাকে লক্ষ্য করে আমাদেরকে সল্যুশনের দিকে আগাইতে হয়।

How to Identify?
১। Array/String/Subarray/Substring
2। Longest/Smallest/Minimum/Maximum/
৩। Window Size

সাধারনত এই তিনটা জিনিসের মাধ্যমেই খুব সহজেই আমরা বুঝতে পারবো কিভাবে একটা প্রবলেম এই টেকনিক এর মাধ্যমে সলভ করা যাবে। 

Sliding Window এবং Two Pointers টেকনিকের মধ্যে ছোটো একটা পার্থক্য আছে।

Two Pointers টেকনিকে আমরা দুই সাইড থেকে আগাইতে থাকি কিন্তু Sliding Window তে একইদিকে "window" আগাইতে থাকে।

নেক্সট কিছু Sliding Window রিলেটেড প্রবলেম সল্ভিং এর মাধ্যমে আমরা আরোও সুন্দর মত এই টেকনিক বুঝতে পারবো । 


No comments:

Post a Comment