Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 5b9365e

Browse files
variables refactor
1 parent 03b27b4 commit 5b9365e

File tree

8 files changed

+24
-79
lines changed

8 files changed

+24
-79
lines changed

‎data-structures/binary-search-tree.js‎

Lines changed: 1 addition & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -33,56 +33,6 @@ BST.prototype.delete = function (value) {
3333
// What would be a good implementation:
3434
// All these methods in the Node object
3535
// or in the Tree object?
36-
let current = this.search(value),
37-
parent = null,
38-
found = false
39-
40-
// while (!found && current) {
41-
// parent = current
42-
// if (value < current.key) current = current.left
43-
// else if (value > current.key) current = current.right
44-
// else found = true
45-
// }
46-
47-
// if (!found) return
48-
49-
if (!current) return null
50-
51-
if (current === this.root) {
52-
let pseudoRoot = new Node(0)
53-
pseudoRoot.left = this.root
54-
this.root.parent = pseudoRoot
55-
let deleted = this.delete(this.root.key)
56-
this.root = pseudoRoot.left
57-
if (this.root) this.root.parent = null
58-
59-
return deleted
60-
} else {
61-
return this.delete(current)
62-
}
63-
64-
// delete a node with no children
65-
if (!current.left || !current.right) {
66-
if (current === parent.left) {
67-
parent.left = current.left || current.right
68-
if (parent.left) {
69-
parent.left.parent = parent
70-
}
71-
} else {
72-
parent.right = current.left || current.right
73-
if (parent.right) {
74-
parent.right.parent = parent
75-
}
76-
}
77-
return current
78-
} else {
79-
let s = this.sucessor(current.key),
80-
temp = current.key
81-
82-
current.key = s.key
83-
s.key = temp
84-
return this.delete(s.key)
85-
}
8636
}
8737

8838
BST.prototype.search = function (value) {
@@ -93,7 +43,7 @@ BST.prototype.search = function (value) {
9343
else current = current.right
9444
}
9545
return null
96-
l}
46+
}
9747

9848
BST.prototype.min = function (node) {
9949
while (node.left) node = node.left

‎sorting/bubble-sort.js‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ let bubbleSort = (arr) => {
1010
arr[i] = arr[j]
1111
arr[j] = temp
1212
}
13-
1413
}
1514
}
1615

‎sorting/bucket-sort.js‎

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,19 +3,17 @@
33
let insertionSort = require('./insertion-sort.js')
44

55
let bucketSort = (arr) => {
6-
let result = []
6+
let result = [],
7+
i
78

8-
for (leti = 0; i < arr.length; i++){
9+
for (i = 0; i < arr.length; i++)
910
result[i] = []
10-
}
1111

12-
for (leti = 0; i < arr.length; i++){
12+
for (i = 0; i < arr.length; i++)
1313
result[Math.floor(arr[i] / 10)].push(arr[i])
14-
}
1514

16-
for (leti = 0; i < arr.length; i++){
15+
for (i = 0; i < arr.length; i++)
1716
insertionSort(result[i])
18-
}
1917

2018
result = [].concat.apply([], result)
2119

‎sorting/counting-sort.js‎

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,20 @@
33
let countingSort = (arr) => {
44
let result = [],
55
count = [],
6-
maxArr = Math.max(...arr)
6+
maxArr = Math.max(...arr),
7+
i,
8+
j
79

8-
for (leti = 0; i <= maxArr; i++){
10+
for (i = 0; i <= maxArr; i++)
911
count[i] = 0
10-
}
1112

12-
for (letj = 0; j < arr.length; j++){
13+
for (j = 0; j < arr.length; j++)
1314
count[arr[j]] = count[arr[j]] + 1
14-
}
1515

16-
for (leti = 1; i <= maxArr; i++){
16+
for (i = 1; i <= maxArr; i++)
1717
count[i] = count[i] + count[i - 1]
18-
}
1918

20-
for (letj = arr.length - 1; j >= 0; j--) {
19+
for (j = arr.length - 1; j >= 0; j--) {
2120
count[arr[j]] = count[arr[j]] - 1
2221
result[count[arr[j]]] = arr[j]
2322
}

‎sorting/heap-sort.js‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@ let maxHeapify = (arr, i, n) => {
1111
rigth = 2 * i + 2,
1212
largest = i
1313

14-
if (left < n && arr[left] > arr[i]){
14+
if (left < n && arr[left] > arr[i])
1515
largest = left
16-
}
17-
if (rigth < n && arr[rigth] > arr[largest]){
16+
17+
if (rigth < n && arr[rigth] > arr[largest])
1818
largest = rigth
19-
}
19+
2020
if (largest !== i) {
2121
swap(arr, i, largest)
2222
maxHeapify(arr, largest, n)

‎sorting/merge-sort.js‎

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,10 @@ let merge = (left, right) => {
66
j = 0
77

88
while (i < left.length && j < right.length) {
9-
if (left[i] < right[j]) arr.push(left[i++])
10-
else arr.push(right[j++])
9+
if (left[i] < right[j])
10+
arr.push(left[i++])
11+
else
12+
arr.push(right[j++])
1113
}
1214

1315
return arr.concat(left.slice(i)).concat(right.slice(j))

‎sorting/quick-sort.js‎

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,8 @@ let partition = (arr, start, end) => {
1111
i = start - 1
1212

1313
for (let j = start; j < end; j++) {
14-
if (arr[j] <= pivot) {
15-
i++
16-
swap(arr, i, j)
17-
}
14+
if (arr[j] <= pivot)
15+
swap(arr, ++i, j)
1816
}
1917
swap(arr, i + 1, end)
2018
return i + 1

‎sorting/selection-sort.js‎

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,8 @@ let selectionSort = (array) => {
77
min = i
88

99
for (let j = i + 1; j < array.length; j++) {
10-
if (array[j] < array[min]){
10+
if (array[j] < array[min])
1111
min = j
12-
}
1312
}
1413

1514
if (i !== min) {

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /