인터뷰에서이 질문을 받았습니다. 내가 이런 식으로 뭔가에 내려와 // 그래서Java에서 정수 넘침
class Iterator {
bool hasNext;
int getNext();
}
XN 번호 X1, X2, X3, ...의 평균을 계산하도록 요청 받았다 :
double average (Iterator & it) {
double average = 0;
double sum = 0;
int len = 0;
while (it.hasNext == true) {
sum += it.getNext();
}
if (len > 0)
average = sum/len;
}
면접관이 목록은 말했다 크기는 알 수없고 매우 클 수 있으므로 합계가 넘칠 수 있습니다. 그는 오버플로 문제를 해결하는 방법을 물었고 최대 횟수를 초과 할 때가 얼마나 될지를 추적하여 대답했습니다. 그는 스택과 평균 및 길이에 관해서 뭔가를 말했습니다. 어떤 종류의 목록에 2 개의 변수? 누구나 단서가 있습니까?
관련 질문 : http://stackoverflow.com/questions/1657834/how-can-i-check-if overflow-two-numbers-in-java-will-cause-an-overflow http://stackoverflow.com/questions/12226634/how-to-prevent-integer-overflow-in-java-code –
당신은 " 합계를 계산하려면 "평균을 의미하셨습니까? – icza