Skip to content

Commit 42e5205

Browse files
committed
Forgot about these classic but inefficient ones
1 parent f6680b5 commit 42e5205

File tree

10 files changed

+152
-0
lines changed

10 files changed

+152
-0
lines changed

Sorting/insertion-sort.c

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
// Algorithm: Insertion Sort
2+
// Type: Sorting (Comparison-based)
3+
// Time Complexity: O(n^2)
4+
// Space Complexity: O(1)
5+
6+
void insertionSort(int arr[], int n) {
7+
for (int i = 1; i < n; i++) {
8+
int key = arr[i];
9+
int j = i - 1;
10+
while (j >= 0 && arr[j] > key) {
11+
arr[j + 1] = arr[j];
12+
j--;
13+
}
14+
arr[j + 1] = key;
15+
}
16+
}

Sorting/insertion-sort.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
// Algorithm: Insertion Sort
2+
// Type: Sorting (Comparison-based)
3+
// Time Complexity: O(n^2)
4+
// Space Complexity: O(1)
5+
6+
public static void insertionSort(int[] arr) {
7+
for (int i = 1; i < arr.length; i++) {
8+
int key = arr[i];
9+
int j = i - 1;
10+
while (j >= 0 && arr[j] > key) {
11+
arr[j + 1] = arr[j];
12+
j--;
13+
}
14+
arr[j + 1] = key;
15+
}
16+
}

Sorting/insertion-sort.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
// Algorithm: Insertion Sort
2+
// Type: Sorting (Comparison-based)
3+
// Time Complexity: O(n^2)
4+
// Space Complexity: O(1)
5+
6+
function insertionSort(arr) {
7+
for (let i = 1; i < arr.length; i++) {
8+
let key = arr[i];
9+
let j = i - 1;
10+
while (j >= 0 && arr[j] > key) {
11+
arr[j + 1] = arr[j];
12+
j--;
13+
}
14+
arr[j + 1] = key;
15+
}
16+
}

Sorting/insertion-sort.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# Algorithm: Insertion Sort
2+
# Type: Sorting (Comparison-based)
3+
# Time Complexity: O(n^2)
4+
# Space Complexity: O(1)
5+
6+
def insertion_sort(arr):
7+
for i in range(1, len(arr)):
8+
key = arr[i]
9+
j = i - 1
10+
while j >= 0 and arr[j] > key:
11+
arr[j + 1] = arr[j]
12+
j -= 1
13+
arr[j + 1] = key

Sorting/insertion-sort.txt

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// Algorithm: Insertion Sort
2+
// Type: Sorting (Comparison-based)
3+
// Time Complexity: O(n^2)
4+
// Space Complexity: O(1)
5+
6+
function insertionSort(arr):
7+
for i from 1 to length(arr) - 1:
8+
key = arr[i]
9+
j = i - 1
10+
while j >= 0 and arr[j] > key:
11+
arr[j + 1] = arr[j]
12+
j = j - 1
13+
arr[j + 1] = key

Sorting/selection-sort.c

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
// Algorithm: Selection Sort
2+
// Type: Sorting (Comparison-based)
3+
// Time Complexity: O(n^2)
4+
// Space Complexity: O(1)
5+
6+
void selectionSort(int arr[], int n) {
7+
for (int i = 0; i < n - 1; i++) {
8+
int min_idx = i;
9+
for (int j = i + 1; j < n; j++) {
10+
if (arr[j] < arr[min_idx])
11+
min_idx = j;
12+
}
13+
int temp = arr[i];
14+
arr[i] = arr[min_idx];
15+
arr[min_idx] = temp;
16+
}
17+
}

Sorting/selection-sort.java

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
// Algorithm: Selection Sort
2+
// Type: Sorting (Comparison-based)
3+
// Time Complexity: O(n^2)
4+
// Space Complexity: O(1)
5+
6+
public static void selectionSort(int[] arr) {
7+
int n = arr.length;
8+
for (int i = 0; i < n - 1; i++) {
9+
int minIdx = i;
10+
for (int j = i + 1; j < n; j++) {
11+
if (arr[j] < arr[minIdx]) {
12+
minIdx = j;
13+
}
14+
}
15+
int temp = arr[i];
16+
arr[i] = arr[minIdx];
17+
arr[minIdx] = temp;
18+
}
19+
}

Sorting/selection-sort.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
// Algorithm: Selection Sort
2+
// Type: Sorting (Comparison-based)
3+
// Time Complexity: O(n^2)
4+
// Space Complexity: O(1)
5+
6+
function selectionSort(arr) {
7+
const n = arr.length;
8+
for (let i = 0; i < n - 1; i++) {
9+
let minIdx = i;
10+
for (let j = i + 1; j < n; j++) {
11+
if (arr[j] < arr[minIdx]) {
12+
minIdx = j;
13+
}
14+
}
15+
[arr[i], arr[minIdx]] = [arr[minIdx], arr[i]];
16+
}
17+
}

Sorting/selection-sort.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# Algorithm: Selection Sort
2+
# Type: Sorting (Comparison-based)
3+
# Time Complexity: O(n^2)
4+
# Space Complexity: O(1)
5+
6+
def selection_sort(arr):
7+
n = len(arr)
8+
for i in range(n):
9+
min_idx = i
10+
for j in range(i + 1, n):
11+
if arr[j] < arr[min_idx]:
12+
min_idx = j
13+
arr[i], arr[min_idx] = arr[min_idx], arr[i]

Sorting/selection-sort.txt

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
// Algorithm: Selection Sort
2+
// Type: Sorting (Comparison-based)
3+
// Time Complexity: O(n^2)
4+
// Space Complexity: O(1)
5+
6+
function selectionSort(arr):
7+
for i from 0 to length(arr) - 1:
8+
minIndex = i
9+
for j from i+1 to length(arr) - 1:
10+
if arr[j] < arr[minIndex]:
11+
minIndex = j
12+
swap arr[i] and arr[minIndex]

0 commit comments

Comments
 (0)