인덱스접근방식에 대해 질문 있습니다.
86
작성한 질문수 15
첫번째 수는 그대로 넣고
for(int i = 1; i < arr.length -1; i++){
if (arr[i] < arr[i+1]) {
//
}
}
이런 식으로 했는데 출력은 똑같이 나오는데 오답이 떠서 왜 정답이 안되는지 모르겠어요
어차피 마지막 인덱스는 마지막 인덱스 -1번째하고만 비교하면 되니까 상관없지 않나요??
즉 마지막 인덱스 -1(i)보다 마지막 인덱스(i+1)이 크다면 출력에 넣고 아니면 출력에 안 넣고 이런 식으로 생각했는데 이게 틀린 답인가요?
답변 2
0
안녕하세요, 인프런 AI 인턴입니다. rlgus4531님.
질문 주신 Java 코드에서 인덱스 접근 방식에 대해 궁금해하시는 점을 이해했습니다. 먼저 잘못된 부분을 확인하기 위해서는 코드를 통해 해당 구현이 특정 테스트 케이스에서 어떻게 동작하는지 살펴보는 것이 중요합니다. 인덱스 접근 방식에서 주의해야 할 점은 배열의 경계와 관련된 오류인데, 특히 접근할 수 없는 인덱스에 접근하려고 할 때가 있습니다.
문제 설명:
- 주어진 코드에서
for(int i = 1; i < arr.length -1; i++)루프를 사용할 때,arr[i+1]을 접근하여 비교하고 있습니다. 여기서i < arr.length - 1로 되어 있기 때문에arr[i+1]은 배열의 범위를 초과할 수 있습니다.
해결 방법:
arr[i+1]에 접근하기 위해서는for(int i = 0; i < arr.length - 1; i++)와 같이 루프를 설정해야 합니다. 이렇게 하면 마지막 인덱스를 비교하는 상황에서도 문제가 발생하지 않으며, 배열 끝까지 비교를 올바르게 진행할 수 있습니다.
유사한 문제나 답변을 확인하기에는 아래의 인터넷 자료가 참고가 될 수 있을 것입니다. Java에서 배열을 다루는 일반적인 방법에 대한 질문들이 많이 있으니 확인해 보세요.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
안녕하세요. 바뀐 채점사이트 관련해서 문의드립니다.
0
33
1
갑자기 채점 사이트가 바뀌었어요
0
34
1
문제 리스트 페이지
0
29
1
채점 사이트 관련 질문드립니다
0
24
1
봉우리 문제 질문입니다
0
84
2
씨름 선수 문제에서 각 선수의 몸무게나 키가 같을 수도 있다면?
0
65
0
이 코드랑 영상 코드중에 뭐가 더 좋은 코드인가요?
0
72
0
가중치 방향 그래프에서 가중치가 0인 간선을 표현하는 방법
0
67
1
좌표 정렬 문제 이 코드가 왜 틀린지 모르겠습니다 ㅠㅠ
0
85
2
6-7 강의에서
0
48
1
6-6. 장난꾸러기 질문 있습니다.
0
46
1
강의 수강후 코딩테스트
0
111
1
answer 변수 사용 여부
0
46
1
2중 for문
1
85
2
2-11. 임시반장정하기 (Runtime Error)
0
63
1
혹시 LinkedList 같은 자료 구조들은 따로 배우지 않나요?
0
70
1
이런 풀이는 어떨까요
0
44
1
자바 스트림 방식의 효율성 질문 드립니다.
0
57
1
알고리즘 자료 구조들..
0
63
1
StringBuilder vs BufferdWriter
0
48
1
원더랜드(프림)
0
50
1
이런 코드는 어떤가요?
0
61
1
bfs 풀이
0
57
1
병합정렬
0
57
1





