কম্পিউটার টিউটোরিয়াল

সি শার্প প্রোগ্রাম: দেওয়া ইন্টিজারের বাইনারি রিপ্রেজেন্টেশনে সবচেয়ে লম্বা কনসিকিউটিভ ১'র দৈর্ঘ্য খুঁজে বের করা

কনসিকিউটিভ ১'র পেতে, বিটওয়াইজ লেফট শিফট অপারেটর ব্যবহার করুন। এখানে আমাদের দশমিক সংখ্যাটি।

i = (i & (i << 1));

উপরের লুপটি চলানোর পর্যন্ত i-এর মান ০ হয়ে যায় এবং count ভেরিয়েবল ব্যবহার করে দৈর্ঘ্য বের করুন।

while (i != 0) { 
    i = (i & (i << 1)); 
    count++; 
}

এখানে আমরা ১৫০ উদাহরণ হিসেবে নিয়েছি।

১৫০-এর বাইনারি হলো 10010110। তাই, আমাদের দুটি কনসিকিউটিভ ১ আছে।

উদাহরণ

using System; 
class Demo { 
    private static int findConsecutive(int i) { 
        int count = 0; 
        while (i != 0) { 
            i = (i & (i << 1)); 
            count++; 
        } 
        return count; 
    } 
    // ড্রাইভার কোড 
    public static void Main() { 
        // ১৫০-এর বাইনারি 10010110 
        Console.WriteLine(findConsecutive(150)); 
    } 
}

আউটপুট

2
  1. C++-এ দেওয়া শুরুর ক্যারেক্টার থেকে সর্বোচ্চ পথের দৈর্ঘ্য নির্ণয়

  2. পাইথনে n-ary ট্রি-তে সর্বোচ্চ পথ দৈর্ঘ্য খুঁজে বের করার প্রোগ্রাম

  3. পাইথনে বাইনারি ট্রির লংগেস্ট কনsekutিভ পথের দৈর্ঘ্য বের করার প্রোগ্রাম

  4. পাইথনে বাইনারি ট্রির সর্বোচ্চ অল্টারনেটিং পথের দৈর্ঘ্য বের করার প্রোগ্রাম