@comparison-sorting/is-sorted
Version:
Order validation for JavaScript
1 lines • 1.28 kB
Source Map (JSON)
{"version":3,"file":"index.cjs","sources":["../src/firstInversion.js","../src/isSorted.js"],"sourcesContent":["/**\n * Returns k <= right such that [left,k[ is sorted. If k < right, then\n * compare( array[k-1] , array[k] ) > 0.\n *\n * @param {Function} compare\n * @param {ArrayLike} array\n * @param {number} left\n * @param {number} right\n * @return {number}\n */\nexport default function firstInversion(compare, array, left, right) {\n\tif (left >= right) return right;\n\n\twhile (++left < right) {\n\t\tif (compare(array[left - 1], array[left]) > 0) {\n\t\t\tbreak;\n\t\t}\n\t}\n\n\treturn left;\n}\n","import firstInversion from './firstInversion.js';\n\n/**\n * Returns whether range [left,right[ of array is sorted.\n *\n * @param {Function} compare\n * @param {ArrayLike} array\n * @param {number} left\n * @param {number} right\n * @return {boolean}\n */\nexport default function isSorted(compare, array, left, right) {\n\treturn firstInversion(compare, array, left, right) === right;\n}\n"],"names":["firstInversion","compare","array","left","right"],"mappings":"SAUwBA,EAAeC,EAASC,EAAOC,EAAMC,GAC5D,GAAID,GAAQC,EAAO,OAAOA,EAE1B,OAASD,EAAOC,KACXH,EAAQC,EAAMC,EAAO,GAAID,EAAMC,IAAS,KAK7C,OAAOA,qDCRyBF,EAASC,EAAOC,EAAMC,GACtD,OAAOJ,EAAeC,EAASC,EAAOC,EAAMC,KAAWA"}