888. 有效单词方阵:
给定一个单词序列,检查它是否构成一个有效单词方阵。
一个有效的单词方阵应满足以下条件:对于满足0≤k<max(numRows numColumns)的k,第k行和第k列对应的字符串应该相同。
给定的单词数量至少为1,且不超过500。
单词长度至少为1,不超过500。
每个单词只包含小写英文字母a-z。
样例 1:
输入:
[
"abcd",
"bnrt",
"crmy",
"dtye"
]
输出:
true
解释:
第一行和第一列都是“abcd”。
第二行和第二列都是“bnrt”。
第三行和第三列都是“crmy”。
第四行和第四列都是“dtye”。
因此,这是一个有效的单词广场.
样例 2:
输入:
[
"abcd",
"bnrt",
"crm",
"dt"
]
输出:
true
解释:
第一行和第一列都是“abcd”。
第二行和第二列都是“bnrt”。
第三行和第三列都是“crm”。
第四行和第四列都是“dt”。
因此,这是一个有效的单词广场.
样例 3:
输入:
[
"ball",
"area",
"read",
"lady"
]
输出:
false
解释:
第三行是 "read" 但是第三列是 "lead".
因此,这不是一个有效的单词广场.
原题传送门
题解
public class Solution {
/**
* @param words: a list of string
* @return: a boolean
*/
public boolean validWordSquare(String[] words) {
// Write your code here
for (int i = 0; i < words.length; i++) {
String word = words[i];
if (word.length() != words.length) {
return false;
}
for (int j = 0; j < words.length; j++) {
String cWord = words[j];
if (cWord.length() != words.length) {
return false;
}
if (cWord.charAt(i) != word.charAt(j)) {
return false;
}
}
}
return true;
}
}
最后说两句
非常感谢你阅读本文章,如果你觉得本文对你有所帮助,请留下你的足迹,点个赞,留个言,多谢~
作者水平有限,如果文章内容有不准确的地方,请指正。
希望小伙伴们都能每天进步一点点。
本文由二当家的白帽子博客原创,转载请注明来源,谢谢~