Tôi có đoạn mã sau:Làm thế nào để cải thiện các lồng cho vòng
// vector of elements
vector<Graphic> graphics;
// vector of indexes of the selected graphic elements
vector<int> selected_indexes;
// vector according to which the graphic elements have to be "sorted" and parsed
vector<short> order;
for (auto o : order)
{
for (auto i : selected_indexes)
{
const auto& g = graphics[i];
if (g.position() == o)
{
// parse g
}
}
}
Tôi có một vector của các yếu tố tùy chỉnh cũng như các chỉ số trong những yếu tố đó đã được chọn để được phân tích, nhưng thứ tự mà các phần tử này phải được phân tích cú pháp phụ thuộc vào giá trị position()
của chúng theo một vectơ thứ ba.
Có cách nào để cải thiện các vòng lặp lồng nhau này, tránh lặp đi lặp lại các thành phần sẽ bị bỏ qua vì vị trí của chúng không bằng với thứ tự hiện tại không?
Những cải tiến bạn đang tìm kiếm, chúng có phải là tốc độ (thời gian thực hiện), khả năng đọc hoặc "sang trọng" không? – Niall
@Niall Tôi đang tìm kiếm các cải tiến về tốc độ. – Nick