एक स्ट्रिंग दी गई है, हमारा कार्य स्ट्रिंग को दो तरह से स्लाइस करना है। एक क्लॉकवाइज और दूसरा एंटीक्लॉकवाइज।
1. लेफ्ट (या एंटीक्लॉकवाइज) दी गई स्ट्रिंग को d एलिमेंट्स द्वारा रोटेट करें (जहां d <= n)।
2. राइट (या क्लॉकवाइज) दी गई स्ट्रिंग को d एलिमेंट्स द्वारा रोटेट करें (जहां d <= n)।
उदाहरण
Input: string = "pythonprogram" d = 2 Output: Left Rotation: thonprogrampy Right Rotation: ampythonprogr
एल्गोरिदम
चरण 1: स्ट्रिंग दर्ज करें। चरण 2: लेफ्ट रोटेशन के लिए स्ट्रिंग को दो भागों में अलग करें: Lfirst = str[0:d] और Lsecond = str[d:]। राइट रोटेशन के लिए: Rfirst = str[0:len(str)-d] और Rsecond = str[len(str)-d:]। चरण 3: अब इन दो भागों को सेकंड + फर्स्ट के अनुसार कन्केटनेट करें।
उदाहरण कोड
def rotate(input, d):
# लेफ्ट और राइट के लिए स्ट्रिंग को दो भागों में स्लाइस करें
Lfirst = input[0:d]
Lsecond = input[d:]
Rfirst = input[0:len(input)-d]
Rsecond = input[len(input)-d:]
print("Left Rotation:", (Lsecond + Lfirst))
print("Right Rotation:", (Rsecond + Rfirst))
# ड्राइवर प्रोग्राम
if __name__ == "__main__":
str = input("Enter String ::>")
d = 2
rotate(str, d)आउटपुट
Enter String ::> pythonprogram Left Rotation: thonprogrampy Right Rotation: ampythonprogr