# Sorting Terminology

**What is in-place sorting?**

An in-place sorting algorithm uses constant extra space for producing the output (modifies the given array only). It sorts the list only by modifying the order of the elements within the list.

For example, Insertion Sort and Selection Sorts are in-place sorting algorithms as they do not use any additional space for sorting the list and a typical implementation of Merge Sort is not in-place, also the implementation for counting sort is not in-place sorting algorithm.

**What are Internal and External Sortings?**

When all data that needs to be sorted cannot be placed in-memory at a time, the sorting is called external sorting. External Sorting is used for massive amount of data. Merge Sort and its variations are typically used for external sorting. Some external storage like hard-disk, CD, etc is used for external storage.

When all data is placed in-memory, then sorting is called internal sorting.

**What is stable sorting?**

See Stable Sorting Algorithms

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above

Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: **DSA Self Paced**. Become industry ready at a student-friendly price.

## Recommended Posts:

- Know Your Sorting Algorithm | Set 1 (Sorting Weapons used by Programming Languages)
- Know Your Sorting Algorithm | Set 2 (Introsort- C++’s Sorting Weapon)
- Sorting objects using In-Place sorting algorithm
- Sorting a Map by value in C++ STL
- Alternative Sorting
- When to use each Sorting Algorithm
- Pancake sorting
- Sorting Big Integers
- Sorting in Java
- External Sorting
- Sorting all array elements except one
- Sorting without comparison of elements
- Sorting array using Stacks
- A Pancake Sorting Problem
- Cartesian Tree Sorting
- C Program for Pancake sorting
- Row wise sorting in 2D array
- Stability in sorting algorithms
- Case-specific Sorting of Strings
- Merging and Sorting Two Unsorted Stacks