Update WordLadderTest.java & WordLadder.java (#3674)

This commit is contained in:
Taranjeet Singh Kalsi
2022-10-26 18:44:03 +05:30
committed by GitHub
parent 2e25f89c36
commit a0d03e814a
2 changed files with 28 additions and 24 deletions

View File

@ -1,7 +1,6 @@
package com.thealgorithms.strings;
import static org.junit.jupiter.api.Assertions.*;
import org.junit.jupiter.api.Test;
import java.util.*;
@ -9,9 +8,31 @@ public class WordLadderTest {
@Test
public void testWordLadder() {
String words1[] = { "hot", "dot", "dog", "lot", "log", "cog" };
assertEquals(5, WordLadder.ladderLength("hit", "cog", Arrays.asList(words1)));
String words2[] = { "hot", "dot", "dog", "lot", "log" };
assertEquals(0, WordLadder.ladderLength("hit", "cog", Arrays.asList(words2)));
/**
* Test 1:
* Input: beginWord = "hit", endWord = "cog", wordList =
* ["hot","dot","dog","lot","log","cog"]
* Output: 5
* Explanation: One shortest transformation sequence is
* "hit" -> "hot" -> "dot" -> "dog" -> cog"
* which is 5 words long.
*/
List<String> wordList1 = Arrays.asList("hot", "dot", "dog", "lot", "log", "cog");
assertEquals(WordLadder.ladderLength("hit", "cog", wordList1), 5);
/**
* Test 2:
* Input: beginWord = "hit", endWord = "cog", wordList =
* ["hot","dot","dog","lot","log"]
* Output: 0
* Explanation: The endWord "cog" is not in wordList,
* therefore there is no valid transformation sequence.
*/
List<String> wordList2 = Arrays.asList("hot", "dot", "dog", "lot", "log");
assertEquals(WordLadder.ladderLength("hit", "cog", wordList2), 0);
}
}