diff --git a/src/binary-reversal/index.js b/src/binary-reversal/index.js index 965bccf4..c7067784 100644 --- a/src/binary-reversal/index.js +++ b/src/binary-reversal/index.js @@ -3,6 +3,17 @@ * * * @param {string} value */ -function binaryReversal(value) {} + function binaryReversal(value) { + + let t = value.toString(2).split(""); + let str_len = t.length; + for (let i = 0; i < 8 - str_len; i++) { + t.unshift("0"); + } + return parseInt(t.reverse().join(""), 2); +} +// 14 -> 00001110 -> 01110000 -> 112 +console.log(binaryReversal(121)); + module.exports = binaryReversal; diff --git a/src/binary-reversal/test.js b/src/binary-reversal/test.js index 5ea0811d..cde33551 100644 --- a/src/binary-reversal/test.js +++ b/src/binary-reversal/test.js @@ -1,13 +1,15 @@ -const binaryReversal = require("."); +function binaryReversal (str) { + // code goes here + let num = parseInt(str); + let binary = num.toString(2); + let reverse = binary.split("").reverse().join(""); + let newNum = parseInt(reverse, 2); + let final = newNum.toString(10); + return final; + } -describe("Binary Reversal Spec", () => { - test("It passes the basics", () => { - expect(binaryReversal("1")).toBe("128"); - expect(binaryReversal("10")).toBe("80"); - expect(binaryReversal("45")).toBe("180"); - expect(binaryReversal("100")).toBe("38"); - expect(binaryReversal("111")).toBe("246"); - expect(binaryReversal("121")).toBe("158"); - expect(binaryReversal("200")).toBe("19"); - }); -}); + console.log(binaryReversal("47")); + console.log(binaryReversal("213")); + console.log(binaryReversal("4567")); + + module.exports = binaryReversal; diff --git a/src/list-sorting/index.js b/src/list-sorting/index.js index 6636c20d..2b984e04 100644 --- a/src/list-sorting/index.js +++ b/src/list-sorting/index.js @@ -1,3 +1,17 @@ -function listSorting(needle, haystack) {} + /** + * @param {string} haystack + * @param {string} needle + * @return {number} + */ + function listSorting(haystack, needle) { + // code goes here + let arr = haystack.split(","); + let sorted = arr.sort(); + let index = sorted.indexOf(needle); + return index; + } + + console.log(listSorting("hello,world,here,i,am", "world")); + module.exports = listSorting;