وارونه کردن رشتهها (خواندن یک «رشته» از راست به چپ، نه از چپ به راست) کاری بهطور شگفتآوری رایج در برنامهنویسی است.
برای مثال، در بیوانفورماتیک، وارونه کردن ترتیب رشتههای DNA یا RNA اغلب برای تحلیلهای گوناگون اهمیت دارد؛ مثلاً برای یافتن رشتههای مکمل یا شناسایی توالیهای پالیندرومی که اهمیت زیستی دارند.
وظیفهی شما این است که یک رشتهی دادهشده را وارونه کنید.
چند مثال:
"stressed" را به "desserts" تبدیل کنید."strops" را به "sports" تبدیل کنید."racecar" را به "racecar" تبدیل کنید.تابعتان را روی این رشته امتحان کنید: uüu و ببینید چه اتفاقی میافتد.
سعی کنید تابعی بنویسید که این رشته را بهدرستی معکوس کند.
راهنمایی: خوشههای گرافیمی
برای اینکه تست امتیاز اجرا شود، پرچم نادیدهگرفتن (#[ignore]) را از آخرین تست بردارید و تستها را با این دستور اجرا کنید:
cargo test --features grapheme
برای انجام این بخش امتیاز، باید از کتابخانههای خارجی (در اصطلاح Rust، یک crate) استفاده کنید.
جای خوبی برای جستوجوی آنها crates.io است، مخزن رسمی crateها.
لطفاً به یاد داشته باشید که تسترانر ما فقط از مجموعهی محدودی از crateها پشتیبانی میکند.
فهرست کامل در این فایل زیر بخش [dependencies] آمده است.
برای دستورالعملهای استفاده از crateهای خارجی در پروژههایتان، مستندات را ببینید.
در Exercism ثبتنام کنید تا Rust را همراه با 99 تمرین و مربیگری انسانی واقعی یاد بگیرید و در آن استاد شوید، همهی اینها رایگان.
۱۴ روش متفاوت برای معکوسکردن یک رشته را بررسی کنید و در این مسیر به موضوعات گوناگونی از جمله کدپوینتهای یونیکد، گرافمها، تخصیص حافظه در پشته در برابر هیپ و اشارهگرها میپردازید. راحت باشید و از ۴۵ دقیقه یادگیری همراه با Jeremy و Erik لذت ببرید.