Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const numbers = [5, 17, 3, 17, 4, -1];
- function getDuplicateIndex(arr) {
- const values = {}
- let res = null
- for (let i = 0; i <= arr.length; i++) {
- if (values[arr[i]]) {
- res = i
- break
- }
- else values[arr[i]] = true
- }
- if (res !== null) return res
- return 'no duplicates'
- }
- // Time complexity O(n)
- // Space complexity O(n)
- // const res = getDuplicateIndex(numbers); // 3
- // console.log("TCL: res", res)
- class Node {
- constructor(value) {
- this.value = value
- this.children = null
- }
- }
- function treeSum(node) {
- if (!node) return null
- let sum = 0
- const queue = []
- queue.push(node)
- while(queue.length > 0) {
- const currentNode = queue[0]
- sum += queue.shift().value
- if(currentNode.children && currentNode.children.length > 0) {
- currentNode.children.forEach(item => queue.push(item))
- }
- }
- return sum
- }
- const parentNode = new Node(7)
- const subNode1 = new Node(1)
- const subNode2 = new Node(2)
- const subNode3 = new Node(3)
- const subNode4 = new Node(3)
- parentNode.children = [subNode1, subNode2, subNode3, subNode4]
- console.log(treeSum(parentNode));
- // Time complexity O(n)
- // Space complexity O(n)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement