Thread

Zero-JS Hypermedia Browser

Relays: 5
Replies: 0
Generated: 21:30:51
A funny challenge for devs, can you optimize this merkle root calculation? No chat gpt lol ``` const { createHash } = require('crypto'); const sha = (v) => createHash('sha256').update(v).digest('hex'); const computeMerkleRoot = (txs) => { let i = 0; let next = []; while (true) { if (i >= txs.length) { txs = next; next = []; i = 0; } else { if (!!txs[i + 1]) { next.push(sha(txs[i] + txs[i + 1])); } else { next.push(sha(txs[i] + txs[i])); } i += 2; } if (!txs.length || txs.length == 1) { break; } } console.log('Merkle root:', txs.join('')); }; const txs = ['A', 'B', 'C', 'D']; computeMerkleRoot(txs); ```
2025-02-04 18:01:40 from 1 relay(s)
Login to reply