У меня есть код, который использует Arrays.sort(char[])
следующим образом:
void arrayAnalysis(String[] array){
for(int a=0; a<array.length;a++){
char[] letters = array[a].toCharArray();
Arrays.sort(letters);
...
for(int b=a+1; b<array.length;b++){
char[] letters2 = array[b].toCharArray();
Arrays.sort(letters2);
if(Arrays.equals(letters, letters2)
print("equal");
}
}
}
В этом случае n равно размеру массива.Из-за вложенных циклов, производительность автоматически O (n ^ 2).Тем не менее, я думаю, что Arrays.sort (с O (nlog (n))) также влияет на производительность и делает ее хуже, чем O (n ^ 2).Правильно ли это мышление?
Будет ли окончательный результат O (n * nlog (n) * (n * nlog (n))? Или я ухожу?
Спасибо.
Редактировать: я должен добавить, что, хотя n относится к размеру массива, Arrays.sort работает с количеством букв в элементе массива, что является частью моей путаницы, если это следует добавить к анализу производительности.
Edit2: Было бы здорово, если бы голосующий оставил комментарий о том, почему это было сочтено плохим вопросом.