Consider the following problem on a dictionary of n words, W1...Wn, each with exactly k characters. You can transform a word Wi into word Wj if they differ in at most d≤k characters. (both dd and kk are specified as part of the input, along with n and the words) For example, if the dictionary is: W1 = 'hit', W2 = 'cog', W3 = 'hot', W4 = 'dot', W5 = 'dog', W6 = 'lot', W7 = 'log', and d=1d=1, one way to change 'hit' to 'cog' is: 'hit' →→ 'hot' →→ 'dot' →→ 'dog' →→ 'cog'. We want to find the fewest number of steps to transform W1 to W2.
Consider the following problem on a dictionary of n words, W1...Wn, each with exactly k characters. You can transform a word Wi into word Wj if they differ in at most d≤k characters. (both dd and kk are specified as part of the input, along with n and the words)
For example, if the dictionary is:
W1 = 'hit', W2 = 'cog', W3 = 'hot', W4 = 'dot', W5 = 'dog', W6 = 'lot', W7 = 'log', and d=1d=1, one way to change 'hit' to 'cog' is:
'hit' →→ 'hot' →→ 'dot' →→ 'dog' →→ 'cog'.
We want to find the fewest number of steps to transform W1 to W2.
Q1.1
I claim that this problem be formulated as a shortest path problem. Please provide a strategy to formulate this as the shortest path problem and give a graph visualization of the problem
Q1.2
Show that your graph (in Q 1.1) can be constructed in O(n^2) time, and its size is up to O(n^2).
Trending now
This is a popular solution!
Step by step
Solved in 2 steps