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

পাইথনে স্ট্রিং তালিকা থেকে লংগেস্ট কমন প্রিফিক্স খুঁজে বের করার প্রোগ্রাম


মনে করুন ছোট হাতের স্ট্রিংগুলোর একটি তালিকা আছে। সবচেয়ে বড় কমন প্রিফিক্স খুঁজে বের করতে হবে।

উদাহরণস্বরূপ, ["antivirus", "anticlockwise", "antigravity"] হলে আউটপুট "anti"।

সমাধানের ধাপসমূহ

  • words তালিকা alfabetically সর্ট করুন
  • prefix := নতুন তালিকা, flag := 0
  • i = 0 থেকে words[0]-এর আকার পর্যন্ত,
    • words[0][i] prefix-এ যোগ করুন
    • প্রতিটি j words-এ,
      • যদি j[i] != prefix[-1], prefix থেকে শেষটি মুছুন, flag=1, ব্রেক করুন
    • যদি flag==1, ব্রেক করুন
  • prefix জয়ন করে স্ট্রিং ফেরত দিন

উদাহরণ

class Solution:
    def solve(self, words):
        words.sort()
        prefix = []
        flag = 0
        for i in range(len(words[0])):
            prefix.append(words[0][i])
            for j in words:
                if j[i] != prefix[-1]:
                    prefix.pop()
                    flag = 1
                    break
            if flag == 1:
                break
        return ''.join(prefix)

ob = Solution()
words = ["antivirus", "anticlockwise", "antigravity"]
print(ob.solve(words))

ইনপুট

["antivirus", "anticlockwise", "antigravity"]

আউটপুট

anti
  1. পাইথনে লিংকড লিস্ট ফোল্ড করে ইন্টারসেক্টিং নোডের যোগফল বের করার প্রোগ্রাম

  2. দুই স্ট্রিং থেকে অনকমন ওয়ার্ড বের করার পাইথন প্রোগ্রাম

  3. পাইথনে লিস্ট থেকে N বড় এলিমেন্ট বের করা

  4. পাইথনে দুইটির বেশি স্ট্রিং থেকে লংগেস্ট কমন সাবস্ট্রিং বের করা