假设我有两个字符串a =“a-b-c”,另一个字符串是b =“a-b”。 我想检查字符串a是否包含字符串b的每个字母。 有帮助吗?字符串与另一个字符串字符的比较
-4
A
回答
0
我假设有几种方法和命令你可能会得到两个字符串代表;也就是说,最直接的方法是检查字符串b中的每个字符是否确实包含在字符串a中。为此,您可以在String a上轻松地拨打indexOf(currentCharFromStringB)
。
我希望下面的例子可以帮助你看到我的想法:
"Blue Whale".indexOf("Blue") != -1; // true
"Blue Whale".indexOf("Bloe") != -1; // false
一些伪代码将是:
for each char in b
for each char in a
is a in b?
现在,它是你的,处理你想怎么解压或代表字符串B的每个字符。
我希望这有助于。
1
一个高效的解决方案将把读入两个字符串sets。在这样做后,“b中的每个字符都在”当且仅当b
是subset的a
。它可以优化为仅使用一个集合(对于b) - 参见伪代码。
这种方法的复杂性是平均使用散列表O(|a|+|b|)
,或使用基于树的最坏情况O(log(min{|a|,|b|})*(|a|+|b|))
。如果你搜索每一个角色,它将会比你得到O(|a|*|b|)
更简单。
伪代码:
setB <- empty set
for each element e in b:
setB.add(e)
for each element e in a:
setB.remove(e) //assuming doing nothing if doesn't exist
return setB.isEmpty()
优化的想法是的b
元素(字符)加载到一组,然后迭代a
而如果遇到从集合中删除的元素。
一旦你完成迭代a
,如果(且仅当)存在b
字符,是不是在a
- 它会留在设置和算法将返回false
0
function func(a,b) {
var alphabet = b.split("-");
for (var i=0; i < alphabet.length; i++) {
if (a.indexOf(alphabet[i]) == -1)
return false;
}
return true;
}
func("a-b-c", "a-b");
0
可以使用以下代码:
var b = "a-b";
var a = "a-b-c";
var firstArray = b.split("-");
var secArray = a.split("-");
var length = firstArray.lenght;
for(var i =0; i<length; i++)
{
if(secArray.indexOf(firstArray[i]) != -1)
continue; //or do something
else
break; // or return false.
}
相关问题
- 1. 比较与另一个字符串数组中的字符串
- 2. 将字符串[index]与另一个字符串进行比较
- 3. 与字符串比较字符串值
- 4. 如何比较另一个字符串中的字符串?
- 5. 比较给定字符串开始用另一个字符串
- 6. 比较一个字符串与多个其他字符串
- 7. 字符/字符串比较
- 8. 字符串字符比较
- 9. 如何正确比较一个字符串与另一个字符串
- 10. Arduino - 比较一个拆分字符串与另一个字符串
- 11. PHP脚本比较一个字符串与其他字符串
- 12. PHP将字符串与字符比较
- 13. 如何比较字符与字符串中的单个字符?
- 14. 将用户输入的字符串/字符与另一个字符串/字符进行比较
- 15. ACCESS VBA将字符串与另一个表中的字符串比较
- 16. Android字符串比较,字符串
- 17. 在另一个字符串中比较多个值中的一个字符串
- 18. 比较一个字符串和几个不同的字符串
- 19. 比较字符串1的部分与第二个字符串
- 20. 比较字符串,日期与MySQL查询另一个字符串最新
- 21. Python:如何将input()字符串与另一个字符串进行比较?
- 22. 与字符串比较
- 23. 字符串与node.js比较
- 24. 字符串比较与==
- 25. 比较字符串与document.getElementById()
- 26. PHP字符串与===比较
- 27. 比较datetimepicker与字符串
- 28. 比较一个字符串与@“”
- 29. 比较IEnumerable字符串和SortedList字符串,字符串
- 30. 如何比较一部分MySQL字符串与PHP字符串?
你可以发布你有什么代码? – Josh
“每个字母”的意思是“每个字符”?角色是否必须以相同的顺序发生? –
只是迭代b字符并测试它们是否出现在(使用indexOf) –