# Bogosort vs Bozosort [Differences explained]

The key difference between Bogosort and Bozosort (Bogosort vs Bozosort) is that in Bozosort, only 2 elements are swapped at a time while in Bogosort, there is no such restriction and hence, the elements can take any permutation at a time.

The differences between Bogosort and Bozosort are as follows:

- Bozosort swaps two elements at a time while Bogosort has no such restriction
- Bozosort is more likely to perform better on partially sorted data compared to Bogosort
- Bozosort has a rule attached to it but Bogosort follows no rules
- Considering the best case, Bogosort will perform better in general as it can jump to the sorted data directly as compared to Bozosort which will go on in steps.
- Bogosort is more random than Bozosort

The similarities between Bogosort and Bozosort are as follows:

- Bogosort and Bozosort are both random sorting algorithms.
- The time and space complexity of both Bogosort and Bozosort are same.

In short, Bozosort is preferred over Bogosort as in Bozosort, only two elements are swapped at a time while in Bogosort, the entire list is shuffled. Hence, Bogosort is more random than Bozosort in general.

# Pseudocode (Bogosort vs Bozosort)

The pseudocode of Bozosort is as follows:

```
list // list of integers or other datatype
while( ! issorted(list))
{
i, j = select two random elements in list
swap i and j elements
}
```

The pseudocode of Bogosort is as follows:

```
list // list of integers or other datatype
while( ! issorted(list))
{
shuffle(list)
}
```

Note the difference is that:

- In Bogosort, the entire array is shuffled.
- In Bozosort, only two elements are swapped.

# Time & Space complexity

Time and Space complexity of both Bogosort and Bozosort are same.

- Worst case time complexity: O((N+1)!)
- Average case time complexity: O((N+1)!)
- Best case time complexity: O(N)
- Space complexity: O(1)

With this article at OpenGenus, you must have the complete idea of the differences between Bogosort and Bozosort.