## heap sort

0 likes • Nov 19, 2022
JavaScript

## More JavaScript Posts

### Rings and Rods

CodeCatch
0 likes • Nov 19, 2022
JavaScript
```// There are n rings and each ring is either red, green, or blue. The rings are distributed across ten rods labeled from 0 to 9.
// You are given a string rings of length 2n that describes the n rings that are placed onto the rods. Every two characters in rings forms a color-position pair that is used to describe each ring where:
// The first character of the ith pair denotes the ith ring's color ('R', 'G', 'B').// The second character of the ith pair denotes the rod that the ith ring is placed on ('0' to '9').// For example, "R3G2B1" describes n == 3 rings: a red ring placed onto the rod labeled 3, a green ring placed onto the rod labeled 2, and a blue ring placed onto the rod labeled 1.
// Return the number of rods that have all three colors of rings on them.

let rings = "B0B6G0R6R0R6G9";var countPoints = function(rings) {        let sum = 0;    	// Always 10 Rods    for (let i = 0; i < 10; i++) {        if (rings.includes(`B\${i}`) && rings.includes(`G\${i}`) && rings.includes(`R\${i}`)) {            sum+=1;        }    }        return sum;    };
console.log(countPoints(rings));```
```function printHeap(heap, index, level) {    if (index >= heap.length) {        return;    }    console.log("  ".repeat(level) + heap[index]);    printHeap(heap, 2 * index + 1, level + 1);    printHeap(heap, 2 * index + 2, level + 1);}
//You can call this function by passing in the heap array and the index of the root node, which is typically 0, and level = 0.
let heap = [3, 8, 7, 15, 17, 30, 35, 2, 4, 5, 9];printHeap(heap,0,0)```
`const geometricProgression = (end, start = 1, step = 2) =>  Array.from({    length: Math.floor(Math.log(end / start) / Math.log(step)) + 1,  }).map((_, i) => start * step ** i);  geometricProgression(256); // [1, 2, 4, 8, 16, 32, 64, 128, 256]geometricProgression(256, 3); // [3, 6, 12, 24, 48, 96, 192]geometricProgression(256, 1, 4); // [1, 4, 16, 64, 256]`

### Get union of arrays

CodeCatch
0 likes • Nov 19, 2022
JavaScript
```const union = (...arr) => [...new Set(arr.flat())];
// Exampleunion([1, 2], [2, 3], );     // [1, 2, 3]```

### linear search

CodeCatch
0 likes • Nov 19, 2022
JavaScript
```const linearSearch = (arr, item) => {  for (const i in arr) {    if (arr[i] === item) return +i;  }  return -1;};
linearSearch([2, 9, 9], 9); // 1linearSearch([2, 9, 9], 7); // -1```
```export const Main = () => {    const [title, setTitle] = useState('');        return (        <ChildComponent            title={title}            onChange={e => setTitle(e.target.value)}        />    );};
export const ChildComponent = ({ title, onChange }) => {    return (        <Box component="form" onSubmit={() => {}} noValidate mt={5}>            <TextField                fullWidth                id="title"                label="Title"                name="title"                autoComplete="title"                autoFocus                color="primary"                variant="filled"                InputLabelProps={{ shrink: true }}                value={title}                onChange={onChange}            />        </Box>    );};```