JortSort: Difference between revisions

Content added Content deleted
Line 1,015: Line 1,015:


return true;
return true;
}</lang>


'''Using iterators:'''
<lang rust>
fn jort_sort<T>(slice: &[T]) -> bool
where
T: Ord + PartialEq + Clone,
{
let mut sorted = slice.to_vec();
sorted.sort_unstable();

slice
.iter()
.zip(sorted.iter())
.all(|(orig, sorted)| orig == sorted)
}</lang>


'''Idiomatic:'''
<lang rust>
fn jort_sort<T>(slice: &[T]) -> bool
where
T: Ord + PartialEq + Clone,
{
let mut sorted = slice.to_vec();
sorted.sort_unstable();

slice == sorted
}</lang>
}</lang>