ระบุรายการอินพุตของผู้ใช้และกำหนดหมายเลขการหมุน งานของเราคือหมุนรายการจากหมายเลขการหมุนที่กำหนด
ตัวอย่าง
Input A= [2, 4, 5, 12, 90] rotation number=3 Output [ 90,12,2, 4, 5]
วิธีที่1
ที่นี่เราสำรวจแต่ละองค์ประกอบในรายการและแทรกองค์ประกอบในตำแหน่งที่ต้องการในรายการที่สอง
ตัวอย่าง
def right_rotation(my_list, num): output_list = [] for item in range(len(my_list) - num, len(my_list)): output_list.append(my_list[item]) for item in range(0, len(my_list) - num): output_list.append(my_list[item]) return output_list # Driver Code A=list() n=int(input("Enter the size of the List")) print("Enter the number") for i in range(int(n)): p=int(input("n=")) A.append(int(p)) print (A) rot_num=int(input("Enter rotate number")) print("After rotation",right_rotation(A, rot_num)) python54.py
ผลลัพธ์
Enter the size of the List 6 Enter the number n= 11 [11] n= 22 [11, 22] n= 33 [11, 22, 33] n= 44 [11, 22, 33, 44] n= 55 [11, 22, 33, 44, 55] n= 66 [11, 22, 33, 44, 55, 66] Enter rotate number 3 After rotation [44, 55, 66, 11, 22, 33]
วิธีที่2
ที่นี่เราใช้เทคนิคการหั่นโดยใช้ len()
A=list() ni=int(input("Enter the size of the List")) print("Enter the number") for i in range(int(ni)): p=int(input("ni=")) A.append(int(p)) print (A) n = 3 A = (A[len(A) - n:len(A)] + A[0:len(A) - n]) print("After Rotation",A)
ผลลัพธ์
Enter the size of the List 6 Enter the number ni= 11 [11] ni= 22 [11, 22] ni= 33 [11, 22, 33] ni= 44 [11, 22, 33, 44] ni= 55 [11, 22, 33, 44, 55] ni= 66 [11, 22, 33, 44, 55, 66] After Rotation [44, 55, 66, 11, 22, 33]
วิธีที่3
ในวิธีนี้ n องค์ประกอบสุดท้ายของรายการ A ถูกนำมาจากนั้นองค์ประกอบที่เหลือของรายการ A.
ตัวอย่าง
A=list() ni=int(input("Enter the size of the List")) print("Enter the number") for i in range(int(ni)): p=int(input("ni=")) A.append(int(p)) print (A) n = 3 A = (A[-n:] + A[:-n]) print("After Rotation",A)
ผลลัพธ์
Enter the size of the List 6 Enter the number ni= 11 [11] ni= 22 [11, 22] ni= 33 [11, 22, 33] ni= 44 [11, 22, 33, 44] ni= 55 [11, 22, 33, 44, 55] ni= 66 [11, 22, 33, 44, 55, 66] After Rotation [44, 55, 66, 11, 22, 33]