কম্পিউটার

পাইথনে একটি প্রদত্ত স্ট্রিং থেকে সদৃশ অক্ষর মুছে ফেলার জন্য প্রোগ্রাম


ধরুন আমরা একটি স্ট্রিং s আছে. আমরা ইতিমধ্যে আগে প্রদর্শিত সমস্ত সদৃশ অক্ষর অপসারণ করতে হবে. চূড়ান্ত স্ট্রিংটিতে আসলটির মতো অক্ষরগুলির একই ক্রম থাকবে৷

আমরা অক্ষরের সন্নিবেশ ক্রম বজায় রাখার জন্য আদেশকৃত অভিধান ব্যবহার করে এটি সমাধান করতে পারি। মানটি সেই অক্ষরের ফ্রিকোয়েন্সি হবে, তবে ফ্রিকোয়েন্সি মান এখানে গুরুত্বপূর্ণ নয়। অভিধান তৈরি করার পরে, আমরা কেবল কীগুলি নিতে পারি এবং স্ট্রিং পেতে তাদের সাথে যোগ দিতে পারি।

সুতরাং, যদি ইনপুট s ="bbabcaaccdbaabababc" এর মত হয়, তাহলে আউটপুট হবে "bacd"।

  • d :=একটি অভিধান যেখানে কীগুলি তাদের সন্নিবেশ ক্রম অনুসারে সংরক্ষিত হয়
  • প্রতিটি অক্ষরের জন্য c s, do
    • যদি d-এ c উপস্থিত না থাকে, তাহলে
      • d[c] :=0
    • d[c] :=d[c] + 1
  • আউটপুট স্ট্রিং তৈরি করতে এবং রিটার্ন করতে সঠিকভাবে একের পর এক কী যোগ করুন।

উদাহরণ

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

from collections import OrderedDict
def solve(s):
   d = OrderedDict()
   for c in s:
      if c not in d:
         d[c] = 0
      d[c] += 1

   return ''.join(d.keys())

s = "bbabcaaccdbaabababc"
print(solve(s))

ইনপুট

"bbabcaaccdbaabababc"

আউটপুট

"bacd"

  1. একটি প্রদত্ত বাক্য থেকে সমস্ত সদৃশ শব্দ মুছে ফেলার জন্য পাইথন প্রোগ্রাম।

  2. পাইথনে একটি প্রদত্ত স্ট্রিং থেকে সমস্ত সদৃশ সরান

  3. পাইথনে স্ট্রিং থেকে অঙ্কগুলি ছাড়া অক্ষরগুলি কীভাবে সরিয়ে ফেলা যায়?

  4. পাইথনের একটি স্ট্রিং থেকে নির্দিষ্ট অক্ষরগুলি কীভাবে সরিয়ে ফেলা যায়?