Tôi có hai bộ sưu tậpC# cách hiệu quả hơn so với hai bộ sưu tập
List<Car> currentCars = GetCurrentCars();
List<Car> newCars = GetNewCars();
Tôi không muốn sử dụng vòng lặp foreach hoặc một cái gì đó bởi vì tôi nghĩ rằng cần có cách tốt hơn để làm điều này.
Tôi đang tìm cách hiệu quả hơn để so sánh bộ sưu tập này và để có được kết quả:
- Danh sách xe hơi mà là trong newCars và không có trong currentCars
- Danh sách xe mà không phải là trong newCars và trong currentCars
Loại ô tô có thuộc tính int Id.
Có được một câu trả lời, mà đã được xóa nói gì tôi có nghĩa là bằng cách nói hiệu quả: mã ít hơn, cơ khí ít hơn, và các trường hợp dễ đọc hơn
Vì vậy, suy nghĩ theo cách này các trường hợp tôi có là gì?
Điều gì sẽ ít mã, ít cơ học hơn và các trường hợp dễ đọc hơn?
Các hoạt động bạn mô tả là "sự khác biệt được đặt". Nếu bạn cần phải tính toán sự khác biệt thiết lập rất nhiều, hoặc trên bộ lớn, sau đó bạn không nên sử dụng Danh sách ở nơi đầu tiên. Bạn nên sử dụng HashSet , một cấu trúc dữ liệu được tối ưu hóa đặc biệt để tính toán các loại khác biệt này. –
@Eric Lippert trong trường hợp của tôi nó là bộ rất nhỏ (1-3 mục), vì vậy tôi nghĩ rằng không có nhu cầu trong HashSet. –
Joper