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

পাইথনে রঙের তালিকা পার্টিশন করার প্রোগ্রাম


ধরা যাক রঙের স্ট্রিংয়ের একটি তালিকা আছে যাতে "red", "green", "blue" থাকতে পারে। তালিকাটি পার্টিশন করতে হবে যাতে সব red আগে, তারপর green, তারপর blue থাকে।

উদাহরণ: colors = ["blue","green", "blue", "red", "red"] হলে আউটপুট ['red', 'red', 'green', 'blue', 'blue']।

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

  • green := 0, blue := 0, red := 0
  • প্রতিটি স্ট্রিং-এর জন্য strs-এ:
    • যদি "red" হয়, তবে strs[blue] = "blue", blue++, strs[green] = "green", green++, strs[red] = "red", red++
    • অন্যথায় যদি "green" হয়, তবে strs[blue] = "blue", blue++, strs[green] = "green", green++
    • অন্যথায় যদি "blue" হয়, তবে strs[blue] = "blue", blue++
  • strs ফেরত দিন।

উদাহরণ কোড

class Solution:
    def solve(self, strs):
        green = 0
        blue = 0
        red = 0
        for string in strs:
            if string == "red":
                strs[blue] = "blue"
                blue += 1
                strs[green] = "green"
                green += 1
                strs[red] = "red"
                red += 1
            elif string == "green":
                strs[blue] = "blue"
                blue += 1
                strs[green] = "green"
                green += 1
            elif string == "blue":
                strs[blue] = "blue"
                blue += 1
        return strs

ob = Solution()
colors = ["blue","green", "blue", "red", "red"]
print(ob.solve(colors))

ইনপুট

["blue","green", "blue", "red", "red"]

আউটপুট

['red', 'red', 'green', 'blue', 'blue']
  1. লিস্টের কিউমুলেটিভ সাম বের করার পাইথন প্রোগ্রাম

  2. পাইথনে ৩D লিস্ট তৈরি করার প্রোগ্রাম

  3. পাইথনে দুটি ডিকশনারি মার্জ করার প্রোগ্রাম

  4. পাইথনে লিস্ট ক্লোন বা কপি করার প্রোগ্রাম