Sorting algorithms/Cocktail sort: Difference between revisions

Content added Content deleted
(Added Wren)
m (Minor edit)
Line 3,025: Line 3,025:
let mut swapped = false;
let mut swapped = false;
let mut i = 0;
let mut i = 0;
while i + 2 <= len {
while i + 1 < len {
if a[i] > a[i + 1] {
if a[i] > a[i + 1] {
a.swap(i, i + 1);
a.swap(i, i + 1);
Line 3,034: Line 3,034:
if swapped {
if swapped {
swapped = false;
swapped = false;
i = len;
i = len - 1;
while i >= 2 {
while i > 0 {
if a[i - 2] > a[i - 1] {
if a[i - 1] > a[i] {
a.swap(i - 2, i - 1);
a.swap(i - 1, i);
swapped = true;
swapped = true;
}
}