Given a binary tree, design an algorithm to find the diameter of the tree. The diameter of a tree is the maximum distance between any two nodes in the tree.
Question 2
Given a singly linked list, design an algorithm to reverse the order of the nodes in the list.
Question 3
Given a set of integers, design an algorithm to find the longest increasing subsequence of the set. A longest increasing subsequence is a sequence of integers in the set that is ordered from smallest to largest.
Question 4
Given a graph, design an algorithm to find the Eulerian cycle of the graph. An Eulerian cycle is a cycle that visits every edge of the graph exactly once.
Question 5
Given a string, design an algorithm to count the number of palindromic subsequences in the string. A palindromic subsequence is a subsequence of the string that is the same when read forwards or backwards.