1. Given the heads of two singly linked-lists headA and headB, return the node at which the two lists intersect. If the two linked lists do not intersect at any node, return null.
2. Design a data structure that supports insert and delete operations in O(1) time complexity.
3. Why do you want to join?
4. Given a string, find all possible codes that the string can generate. You are given that 1 corresponds to 'a', 2 corresponds to 'b', 3 corresponds to 'c', and so on until 26 corresponds to 'z'. Return an array of strings containing all possible codes.
5. Write a polyfill for the Array.map method.