From aa36fccf26f3849b3a11143589258723a3de1959 Mon Sep 17 00:00:00 2001 From: Fish_ Date: Wed, 18 Sep 2019 17:15:29 +0800 Subject: [PATCH] fix: 'counting_sort' panicked at 'index out of bounds... --- rust/13_sorts/counting_sort.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/rust/13_sorts/counting_sort.rs b/rust/13_sorts/counting_sort.rs index cf8fc03b..362eed71 100644 --- a/rust/13_sorts/counting_sort.rs +++ b/rust/13_sorts/counting_sort.rs @@ -7,13 +7,14 @@ pub fn counting_sort(mut nums: Vec) -> Vec { let nums_len = nums.len(); // 获取最大数 let mut max = nums[0]; - // 申请一个长度为 max + 1 的新数组 - let mut bucket = vec![0; (max+1) as usize]; + let mut tmp = vec![0; nums_len]; for i in 1..nums_len { if max < nums[i] { max = nums[i]; } } + // 申请一个长度为 max + 1 的新数组 + let mut bucket = vec![0; (max+1) as usize]; for i in 0..nums_len { bucket[nums[i] as usize] += 1;