UdemyDataStructureandAlgorithmsCourse

recursiveRange Write a function called recursiveRange which accepts a number and adds up all the numbers from 0 to the number passed to the function.

reverse Write a recursive function called reverse which accepts a string and returns a new string in reverse.

isPalindrome Write a recursive function called isPalindrome which returns true if the string passed to it is a palindrome (reads the same forward and backward). Otherwise it returns false.

someRecursive Write a recursive function called someRecursive which accepts an array and a callback. The function returns true if a single value in the array returns true when passed to the callback. Otherwise it returns false.

flatten Write a recursive function called flatten which accepts an array of arrays and returns a new array with all values flattened.

captalizeFirst Write a recursive function called capitalizeFirst. Given an array of strings, capitalize the first letter of each string in the array.

capitalizeWords Write a recursive function called capitalizeWords. Given an array of words, return a new array containing each word capitalized.

nestedEvenSum Write a recursive function called nestedEvenSum. Return the sum of all even numbers in an object which may contain nested objects.

collectStrings Write a function called collectStrings which accepts an object and returns an array of all the values in the object that have a typeof string.

Middle Function Write a function called middle that takes a list and returns a new list that contains all but the first and last elements. myList = [1, 2, 3, 4] middle(myList) # [2,3]

Best Score Given a list, write a function to get first, second best scores from the list. List may contain duplicates.