100,000개의 int 값을 더 효율적으로 추가하는 방법은 무엇인가요?
오늘 면접 질문을 모으다가 예전에 받았던 질문을 봤습니다.
쓸데없는 생각
누구나 토론을 환영합니다!
fonxian 님의 답변을 바탕으로 어제 시도해 보았는데 차이가 없는 것으로 나타났습니다! 구현에 문제가 있나요?
스레드를 사용하는 알고리즘은 스레드에 추가 오버헤드가 필요하므로 속도가 느려질 수 있습니다.
맵을 사용하는 분들은 그냥 무시하세요. 맵 버전이 여러 번 변경되었지만 여전히 원하는 효과를 얻을 수 없는 것 같습니다.
별도계산과 합산계산의 차이는 전혀 없습니다.
알려주신 thomastao님 덕분에 방법을 다시 정리해보니 단서가 있는 것 같네요. 제 레벨이 제한되어 있어서 요약하지는 않겠습니다. 그냥 보세요!
으아악
으아악
仅有的幸福2017-05-17 10:04:50
MapReduce 아이디어나 멀티스레딩을 사용하여 문제를 해결하세요. 10w 정수를 n개 그룹(예: 10개 그룹)으로 매핑합니다. 각 그룹은 1w 숫자의 합을 계산한 다음 10개의 합을 줄이고 더하면 됩니다.