Tôi có hai danh sách chung với 20.000 và 30.000 đối tượng trong mỗi danh sách.Làm thế nào để so sánh hai danh sách lớn được sắp xếp một cách hiệu quả trong C#?
class Employee
{
string name;
double salary;
}
List<Employee> newEmployeeList = List<Employee>() {....} // contains 20,000 objects
List<Employee> oldEmployeeList = List<Employee>() {....} // contains 30,000 objects
Danh sách cũng có thể được sắp xếp theo tên nếu nó cải thiện tốc độ.
tôi muốn so sánh hai danh sách này để tìm hiểu
- nhân viên mà tên tuổi và mức lương phù hợp với
- nhân viên có tên phù hợp nhưng không lương
là gì cách nhanh nhất để so sánh danh sách dữ liệu lớn như vậy với các điều kiện trên?
Bạn có thể sử dụng LINQ, nó có một chi phí hiệu suất nhỏ nhưng một lần nữa như @ Jon nói là đủ cho bạn hoặc bạn đã thử những gì khác? –
Bạn lấy Dữ liệu từ đâu? nếu bạn đang điền vào danh sách của bạn từ SQL, bạn có thể muốn so sánh nó trực tiếp từ SQL và không phải từ danh sách. –
Vì chúng được sắp xếp, một quá trình truyền tuần tự đơn giản là O (n), quá chậm? –