logan-sorting-algorithms-js

1.0.30 • Public • Published

Sorting Algorithms with Explinations of Bubble, and Selection - By Logan.

1. bubbleSortExample(ArrayToBeSorted)

  • Takes one argument, your number array, sorts it, slowly
  • Bubble Sort is never recommended, but very easy to implement
  • Legend has it network television used this for sorting programming. Think of it as that level of speed.
  • Numbers Bubble Up. Largest numbers slowly migrate up the array indices.

2. selectionSort(ArrayToBeSorted)

  • Takes one argument of number array.
  • Selection Sort is in place so even if it isn't the fastest for something large, it has simple space requirements.
  • Recommended for general use.

3. mergeSort(ArrayToBeSorted)

  • Takes one argument, yournumber array, sorts it, at decent speed.
  • This is used commonplace when data is large enough loading data is an issue.
  • This sort tends to be used externally, i.e. not-in-place
  • We follow the divide and conquer principle.
  • Sorting is easier one at a time, from the ground up.
  • Small arrays may be slower than necessary

Bubble Sort Code (Swap Included in Package):

function bubblesort(ArrayToBeSorted) { for ( let i = 0; i < ArrayToBeSorted.size - 1; i++; ) { for ( let j = 0; j < ArrayToBeSorted - ArrayToBeSorted.size - 1; j++ ) { if (ArrayToBeSorted[j] > ArrayToBeSorted[j+1]) { Swap (ArrayToBeSorted , j , j+1) } } } }

function selectionSort(ArrayToBeSorted) { var i, j, min var n = ArrayToBeSorted.length; for ( i = 0; i < n; i++; ) { min = i; for ( j = i+1; j < n; j++) { if ( ArrayToBeSorted[j] < ArrayToBeSorted[min]) { min = j; } } if (min != i) { swap(ArrayToBeSorted, i, min) } } }

function mergeSort(ArrayToBeSorted, left, right) { if ( left >= right) { return; // Returns recursively } var middle = left + parseInt((right - left)/2); mergeSort(ArrayToBeSorted, left, middle); mergeSort(ArrayToBeSorted, middle+1, right); merge(ArrayToBeSorted, left, middle, right); }

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
1.0.308latest

Version History

VersionDownloads (Last 7 Days)Published
1.0.308
1.0.291
1.0.281
1.0.271
1.0.261
1.0.251
1.0.242
1.0.231
1.0.221
1.0.211
1.0.201
1.0.191
1.0.181
1.0.171
1.0.161
1.0.152
1.0.141
1.0.131
1.0.121
1.0.112
1.0.102
1.0.92
1.0.82
1.0.71
1.0.61
1.0.51
1.0.41
1.0.32
1.0.22

Package Sidebar

Install

npm i logan-sorting-algorithms-js

Weekly Downloads

44

Version

1.0.30

License

ISC

Unpacked Size

6.8 kB

Total Files

3

Last publish

Collaborators

  • logan-0