jisub3054   6년 전

기본지식이 부족한지라 시간복잡도에 대해서 잘 모르고
그냥 코딩을 합니다.
근데 이게 시간복잡도 오류인건지 그냥 틀린건지 모르겠네요ㅜㅜ
답은  잘 맞게 나옵니다 틀린부분을 찾아주실 수 있나요 ㅠㅠ

ntopia   6년 전

for(int x=0;x<jj.length;x++) {

요 for문 안에서 문자열 사전순 비교를 하는 것이 잘못되었습니다.

만약 jj[x] > ii[x] 인 상황을 먼저 만났다고 쳐봅시다.

그러면 이 순간 ii 와 jj 는 올바른 순서임이 확정이 되는데요,

이 때 break를 하지 않고 그 다음 문자도 검사하기 때문에

실제로는 올바른 순서인데 올바르지 않다고 체크할 가능성이 있어요.

그러니까 jj[x] > ii[x] 인 게 나오면 바로 break를 하세요.

댓글을 작성하려면 로그인해야 합니다.