تابعی بنویسید که یک دنباله شامل رشتهها یا اعداد را دریافت کند، موارد تکراری مجاور را حذف کند و لیستی از آیتمها را که ترتیب اصلی را حفظ میکند، بازگرداند. آیتمهایی با مقدار مشابه که پشت سر هم قرار گرفتهاند، باید به یک نمونه کاهش یابند.
نمونه ورودی و خروجی
UniqueInOrder("AAAABBBCCDAABBB") ➞ ["A", "B", "C", "D", "A", "B"]
UniqueInOrder("ABBCcAD") ➞ ["A", "B", "C", "c", "A", "D"]
UniqueInOrder([1, 2, 2, 3, 3]) ➞ [1, 2, 3]
نکات
- دنباله ورودی میتواند یک رشته یا یک لیست باشد.
- توابع باید به حروف کوچک و بزرگ حساس باشند (مثلاً
A
وa
متفاوت هستند). - ترتیب آیتمها در لیست خروجی باید مانند ورودی حفظ شود.
- اگر هیچ آیتمی وجود نداشته باشد، خروجی یک لیست خالی خواهد بود.
UniqueInOrder("AAAABBBCCDAABBB") ➞ ["A", "B", "C", "D", "A", "B"]
UniqueInOrder("ABBCcAD") ➞ ["A", "B", "C", "c", "A", "D"]
UniqueInOrder([1, 2, 2, 3, 3]) ➞ [1, 2, 3]
UniqueInOrder("12333355555522211133") ➞ ["1", "2", "3", "5", "2", "1", "3"]
UniqueInOrder("uuUfffFgGggYtt76%5$$$") ➞ ["u", "U", "f", "F", "g", "G", "g", "Y", "t", "7", "6", "%", "5", "$"]
نظرات