Pho*_*nix 1 java sorting algorithm
我有一个很大的疑问.我想在这里找到一个不重复的字符串的第一个字符.例如,对于下面的输入应该返回'c'.所以这就是我计划这样做的方式.但是我注意到remove方法希望删除索引为98而不是删除对象"a".如何强制它删除对象"a"而不是从索引中删除?
为什么这不起作用?
我该怎么做才能改变这个?
ArrayList总是保证按顺序存储东西吗?
public void findStartingLetter()
{
String[] array={"a","b","c","d","b","a","d","d","d"};
List<Character> list = new ArrayList<Character>();
for(String i:array)
{
if(list.contains(i.charAt(0)))
list.remove(i.charAt(0));
else
list.add(i.charAt(0));
}
}
Run Code Online (Sandbox Code Playgroud)
编辑:
性能方面是O(n)函数吗?
小智 6
你必须手动转换为a,Character因为char获取转换为a int,而转换为索引而不是值.
list.remove((Character) i.charAt(0));
Run Code Online (Sandbox Code Playgroud)
将确保它正确完成.