Đầu tiên tạo một list, chỉ mục bắt đầu là 0 và vị trí phần tử thứ ba đầu tiên là 2. Cần duyệt cho đến khi list rỗng và mỗi lần phải tìm chỉ mục phần tử thứ ba tiếp theo, in giá trị và sau đó giảm độ dài list.
Ví dụ
A:[10,20,30,40] OUTPUT:30 20 40 10
Giải thích
Phần tử thứ ba đầu tiên là 30, sau đó đếm từ 40 cho phần tử thứ ba tiếp theo là 20, rồi lại bắt đầu từ 40 cho phần tử thứ ba tiếp theo là 40 và cuối cùng in 10.
Thuật toán
Bước 1: Chỉ mục list bắt đầu từ 0 và phần tử thứ ba đầu tiên ở vị trí 2.
biến p=2, chỉ mục bắt đầu id=0.
Bước 2: Tìm độ dài list.
listlen=len(LST) // độ dài list
Bước 3: Duyệt cho đến khi list rỗng và mỗi lần tìm chỉ mục phần tử thứ ba tiếp theo.
While(listlen > 0) Id = (p + id) % listlen A = LST.pop(id) // xóa và in phần tử cần thiết Listlen -= 1 End while
Mã ví dụ
# Xóa mỗi phần tử thứ ba cho đến khi list rỗng def removenumber(no): # list bắt đầu từ # chỉ mục 0 p = 3 - 1 id = 0 lenoflist = (len(no)) # Thoát khi list # rỗng while lenoflist > 0: id = (p + id) % lenoflist # xóa và in phần tử # cần thiết print(no.pop(id)) lenoflist -= 1 # Mã điều khiển A=list() n=int(input("Nhập kích thước mảng ::")) print("Nhập SỐ NGUYÊN") for i in range(int(n)): p=int(input("n=")) A.append(int(p)) print("Sau khi xóa phần tử thứ ba, List là") removenumber(A) # gọi hàm Kết quả
Nhập kích thước mảng ::9 Nhập số n=10 n=20 n=30 n=40 n=50 n=60 n=70 n=80 n=90 Sau khi xóa phần tử thứ ba, List là 30 60 90 40 80 50 20 70 10