JSFiddle - React, Tailwind, and code Playground

by krustnic

JavaScript

const a = [1,7,5,6,3,1,-6,3]

function sort(arr) {
	for(let i=0; i<arr.length; i++) {
  	for(let j=0; j<arr.length - i - 1; j++) {
    	if (arr[j] > arr[j+1]) {
      	let tmp = arr[j]
        arr[j] = arr[j+1]
        arr[j+1] = tmp
      }
    }
  }
	return a
}

function merge(arr) {
	let i=0;
  let j=arr.length - 1;
  let point = arr[Math.floor((arr.length - 1) / 2)]
  console.log('Pivot: ', point)
  
	while(i<=j) {
  	while(arr[i] < point) {
    	i++
    }
    
    while(arr[j] > point) {
    	j--
    }
    
    if (i<=j) {
    	let tmp = arr[i]
      arr[i] = arr[j]
      arr[j] = tmp
      
      i++
      j--
    }
  }
  
  return arr
}

// console.log(sort(a))
console.log(merge(a))