두 개의 문자열에서 두 개의 char
배열이 생성되었습니다. 배열이 같음을 확인하고 싶습니다.Arrays.equals()의 시간 복잡도
str1Array = str1.toCharArray();
str2Array = str2.toCharArray();
나의 이해는 배열 객체가 메모리에서 같은 객체가있는 경우 str1Array.equals(str2Array)
만 true
를 반환 할 것입니다. 각 인덱스가 같은지 여부를 확인하려면 사용해야합니다. Arrays.equals(str1Array, str2Array)
이 같음 메서드의 복잡성에 대해 궁금합니다.
O(1)
각 인덱스에 대한 동일성을 확인하지 않고 배열 개체의 콘텐츠 같음을 평가할 수 없으므로이를 가정 할 수 없습니다. 내 생각 엔 O(n)
입니다. n
은 min(str1Array.length, str2Array.length)
에 해당합니다.
그렇지 않으면 다른 사람이이를 확인할 수 있습니까?
소스 코드를 볼 수 있습니다. –
@SotiriosDelimanolis이 사이트는 참조 용입니다. 그런 코멘트는별로 도움이되지 않습니다. 물론, 나는 당신과 동의하지만, 대답은 훨씬 더 효과적 일 것입니다. 우리는 위로 올려지기를 원합니다. 사람들에게 물건을 보여달라고 말하고 싶지는 않습니다. –