⭐ String / Array Rearrangement Terms

TermMeaningExample
PermutationRearrangement of same elementsabc β†’ bac
CombinationChoose elements, order doesn’t matter{1,2} same as {2,1}
AnagramString permutation (same chars, diff order)listen β†’ silent
SubsequenceKeep order, can skip charsace from abcde
SubstringContinuous part of stringbcd from abcde
SubarrayContinuous part of array[2,3] from [1,2,3,4]
SubsetAny selected elements{1,3} from {1,2,3}

Super Important Distinctions (Easy to Confuse)

Often ConfusedDifference
Substring vs Subsequencecontinuous vs can skip
Subset vs Subarrayany elements vs continuous
Permutation vs Combinationorder matters vs not

⭐ Permutation vs Combination

1️⃣ Permutation = Arrange

When order matters.

Example: From {A,B,C}, pick 2:

  • AB, BA, AC, CA, BC, CB
  • AB β‰  BA (different order = different answer)

Formula:

Example:

Common Use Cases:

  • Arranging numbers / letters
  • Generating sequences
  • Next permutation
  • Anagrams / string rearrangement

2️⃣ Combination = Choose

When order does NOT matter.

Example: From {A,B,C}, choose 2:

  • {A,B}, {A,C}, {B,C}
  • {A,B} = {B,A} (same group = same answer)

Formula:

Example:

Common Use Cases:

  • Selecting team / group members
  • Picking subsets
  • Combination sum
  • Choosing elements

Quick Check πŸ”

From {1,2,3}, pick 2:

Permutation (order matters):

  • 12, 21
  • 13, 31
  • 23, 32

Combination (order doesn’t matter):

  • {1,2}
  • {1,3}
  • {2,3}