Tôi có một số NSMutableArray
giữ NSStrings
ví dụ: {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
Phương pháp thay đổi mảng tối ưu
Tôi muốn có thể thay đổi các phần tử bằng gói.
Vì vậy, ví dụ: di chuyển 1 đến trung tâm, dịch chuyển tất cả các phần tử, bao quanh các phần tử còn lại (vượt qua giới hạn) để bắt đầu lại và ngược lại, ví dụ: 10 đến trung tâm.
{7, 8, 9, 10, 1, 2, 3, 4, 5, 6}
và {6, 7, 8, 9, 10, 1, 2, 3, 4, 5}
Có một tối ưu hóa sort
phương pháp như thế này đã tồn tại?
tôi nghĩ rằng chúng ta có thể làm điều đó trong thời gian tuyến tính với một 'vòng for', một cho người đầu tiên' k' yếu tố nói 1-6 và tiếp theo cho còn 'yếu tố m' tức 7-10. và 'k + m = n' là kích thước của mảng. Nhưng tôi không biết về bất kỳ thuật toán chuẩn nào như vậy. –
@PraveenS - 'trueIndex = (offset + index)% array.count'. Tôi nghĩ rằng đó là tốt hơn so với thời gian tuyến tính. –