diff --git a/README.md b/README.md
index 690c80ab..077362e7 100644
--- a/README.md
+++ b/README.md
@@ -215,28 +215,28 @@ Below is the list of some of the most used Big O notations and their performance
### Data Structure Operations Complexity
-| Data Structure | Access | Search | Insertion | Deletion | Comments |
-| ----------------------- | :-------: | :-------: | :-------: | :-------: | :-------- |
-| **Array** | 1 | n | n | n | |
-| **Stack** | n | n | 1 | 1 | |
-| **Queue** | n | n | 1 | 1 | |
-| **Linked List** | n | n | 1 | 1 | |
-| **Hash Table** | - | n | n | n | In case of perfect hash function costs would be O(1) |
-| **Binary Search Tree** | n | n | n | n | In case of balanced tree costs would be O(log(n)) |
-| **B-Tree** | log(n) | log(n) | log(n) | log(n) | |
-| **Red-Black Tree** | log(n) | log(n) | log(n) | log(n) | |
-| **AVL Tree** | log(n) | log(n) | log(n) | log(n) | |
+| Data Structure | Access | Search | Insertion | Deletion | Comments |
+| ----------------------- | :---------: | :---------: | :---------: | :---------: | :-------- |
+| **Array** | `1` | `n` | `n` | `n` | |
+| **Stack** | `n` | `n` | `1` | `1` | |
+| **Queue** | `n` | `n` | `1` | `1` | |
+| **Linked List** | `n` | `n` | `1` | `1` | |
+| **Hash Table** | - | `n` | `n` | `n` | In case of perfect hash function costs would be `O(1)` |
+| **Binary Search Tree** | `n` | `n` | `n` | `n` | In case of balanced tree costs would be `O(log(n))` |
+| **B-Tree** | `log(n)` | `log(n)` | `log(n)` | `log(n)` | |
+| **Red-Black Tree** | `log(n)` | `log(n)` | `log(n)` | `log(n)` | |
+| **AVL Tree** | `log(n)` | `log(n)` | `log(n)` | `log(n)` | |
### Array Sorting Algorithms Complexity
-| Name | Best | Average | Worst | Memory | Stable | Comments |
-| --------------------- | :-------: | :-------: | :-----------: | :-------: | :-------: | :-------- |
-| **Bubble sort** | n | n^2 | n^2 | 1 | Yes | |
-| **Insertion sort** | n | n^2 | n^2 | 1 | Yes | |
-| **Selection sort** | n^2 | n^2 | n^2 | 1 | No | |
-| **Heap sort** | n log(n) | n log(n) | n log(n) | 1 | No | |
-| **Merge sort** | n log(n) | n log(n) | n log(n) | n | Yes | |
-| **Quick sort** | n log(n) | n log(n) | n^2 | log(n) | No | |
-| **Shell sort** | n log(n) | depends on gap sequence | n (log(n))^2 | 1 | No | |
-| **Counting sort** | n + r | n + r | n + r | n + r | Yes | r - biggest number in array |
-| **Radix sort** | n * k | n * k | n * k | n + k | Yes | k - length of longest key |
+| Name | Best | Average | Worst | Memory | Stable | Comments |
+| --------------------- | :---------: | :---------: | :-------------: | :---------: | :-------: | :-------- |
+| **Bubble sort** | `n` | `n^2` | `n^2` | `1` | Yes | |
+| **Insertion sort** | `n ` | `n^2` | `n^2` | `1` | Yes | |
+| **Selection sort** | `n^2` | `n^2` | `n^2` | `1` | No | |
+| **Heap sort** | `n log(n)` | `n log(n)` | `n log(n)` | `1` | No | |
+| **Merge sort** | `n log(n)` | `n log(n)` | `n log(n)` | `n` | Yes | |
+| **Quick sort** | `n log(n)` | `n log(n)` | `n^2` | `log(n)` | No | |
+| **Shell sort** | `n log(n)` | depends on gap sequence | `n (log(n))^2` | `1` | No | |
+| **Counting sort** | `n + r` | `n + r` | `n + r` | `n + r` | Yes | `r` - biggest number in array |
+| **Radix sort** | `n * k` | `n * k` | `n * k` | `n + k` | Yes | `k` - length of longest key |
diff --git a/src/algorithms/sorting/bubble-sort/README.md b/src/algorithms/sorting/bubble-sort/README.md
index 8d3c64d4..43610be7 100644
--- a/src/algorithms/sorting/bubble-sort/README.md
+++ b/src/algorithms/sorting/bubble-sort/README.md
@@ -11,9 +11,15 @@ are needed, which indicates that the list is sorted.
## Complexity
-###### time: worst _O_(_n_2), best _O_(_n_), average _O_(_n_2)
+Time
-###### space: worst _O_(1) auxiliary
+- worst _O_(_n_2),
+- best _O_(_n_),
+- average _O_(_n_2)
+
+Space
+
+worst _O_(1) auxiliary
## References