aalhour / aalhour/C-Sharp-Algorithms

Inefficient merge soft

Đang mở Phù hợp với người mới
#44 3 bình luận 0 reaction 1 người được giao Được @davidich nhận Xem trên GitHub
optimization
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

Mở 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

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.