5. Levenshtein distance. Levenshtein distance evaluates how different are the two strings by computing the minimal edit steps from one string to another. The legal edit steps are: - Insert one symbol: {AC, ABC}->{ABC, ABC} - Delete one symbol: {ABDC, ABC}->{ABC, ABC} - Substitute one symbol: {ADC, ABC}->{ABC, ABC} (a) Write a pseudo-code for your algorithm to compute the Levenshtein distance between two given string. (b) Compute the Levenshtein distance of "pineapple" and "watermelon". Show your answers in detail. (c) Analyze the time complexity and space complexity of your algorithm.