aalhour / aalhour/C-Sharp-Algorithms
Inefficient merge soft
- Ngôn ngữ chính
- C#
- Star
- 6.2k
- Fork
- 1.4k
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
```
int midIndex = collection.Count / 2;
var leftCollection = collection.GetRange(startIndex, midIndex);
var rightCollection = collection.GetRange(midIndex, (endIndex - midIndex) + 1);
leftCollection = InternalMergeSort(leftCollection, 0, leftCollection.Count - 1, comparer);
rightCollection = InternalMergeSort(rightCollection, 0, rightCollection.Count - 1, comparer);
```
No need to invoke GetRange, as it copies the data and consumes extra memory. Passing StartIndex, EndIndex along with the original array should be sufficient. Don't you think so?
Hướng dẫn đóng góp
Hướng nghiên cứu
Xem xét triển khai merge sort trong dự án, có thể nằm trong một tệp liên quan đến việc sắp xếp. Issue chỉ ra việc sao chép không cần thiết thông qua GetRange. Kiểm tra cách InternalMergeSort được gọi đệ quy và sửa nó để hoạt động với các chỉ số bắt đầu và kết thúc trên tập hợp ban đầu. Xác minh thay đổi bằng cách chạy các test sắp xếp hiện có.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Loại issue
- Tái cấu trúc
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức phù hợp với người mới
- 65/100