我目前正在尝试从 Vector 中删除“噪音”,但找不到一种优雅的方式来做到这一点。我目前有一个字符串向量,另一个向量表示这些字符串连续出现的次数。
出于某种原因,我似乎无法让它工作。我为此创建的方法如下所示。
public static void correctDisturbance(Vector<String> names, Vector<Integer> lengths, int lengthGuard){
int guard = lengths.size();
int total = 0;
for(int i = 0; i < guard; i++)
{
if(lengths.elementAt(i) <= lengthGuard)
{
int newTotal = total + lengths.elementAt(i);
while(total < newTotal)
{
System.out.println("Removing: " + names.elementAt(newTotal));
names.removeElementAt(newTotal);
newTotal--;
}
lengths.removeElementAt(i);
guard--;
}
else
{
total += lengths.elementAt(i);
}
}
它删除了一些我需要的但不是其他的。我将阈值设置为 5。
长度向量的内容示例如下: [15, 15, 1, 15, 2, 1, 1, 2, 1, 3, 1, 2, 1, 5, 1, 4, 1, 1, 3 ]
提前感谢您的帮助。