로그 출력 등을 위해 항상 문자열을 작성해야합니다. JDK 버전을 통해 우리는 언제 StringBuffer(많은 추가, 스레드 안전) 및 StringBuilder(많은 추가, 비 스레드 안전) 을 사용 했는지 배웠습니다 . 사용에 대한 조언은 무엇입니까 String.format()? 효율적이거나 성능이 중요한 단일 라이너에 대한 연결을 고수해야합니까? 예를 들어 못생긴 구식, String s = "What do you …
성능에 중요한 이진 의사 결정 트리가 있으며이 질문을 한 줄의 코드에 집중하고 싶습니다. 이진 트리 반복기에 대한 코드는 성능 분석을 실행 한 결과와 함께 아래에 있습니다. public ScTreeNode GetNodeForState(int rootIndex, float[] inputs) { 0.2% ScTreeNode node = RootNodes[rootIndex].TreeNode; 24.6% while (node.BranchData != null) { 0.2% BranchNodeData b = node.BranchData; 0.5% …
또 다른 질문 에서 수락 된 답변은 성능 향상을 위해 Python 코드의 (매우 저렴한) if 문을 try / except 블록으로 대체하는 것이 좋습니다. 코딩 스타일 문제는 제쳐두고 예외가 트리거되지 않는다고 가정 할 때 예외 처리기를 사용하는 것이 (성능 측면에서) 예외 처리기를 사용하는 것과없는 경우와 비교하여 0으로 비교하는 if 문을 사용하는 …
현재이 질문은 Q & A 형식에 적합하지 않습니다. 사실, 참고 문헌 또는 전문 지식이 답변을 뒷받침 할 것으로 기대하지만이 질문은 토론, 논쟁, 여론 조사 또는 확장 된 토론을 유도 할 가능성이 높습니다. 이 질문이 개선되고 다시 열릴 수 있다고 생각 되면 도움말 센터 를 방문하여 안내를 받으세요. 휴일 칠년 전에 …
루프 언 롤링을 통해 성능에 매우 중요한 코드 (몬테카를로 시뮬레이션 내에서 수백만 번 호출되는 빠른 정렬 알고리즘)를 최적화하려고했습니다. 속도를 높이려는 내부 루프는 다음과 같습니다. // Search for elements to swap. while(myArray[++index1] < pivot) {} while(pivot < myArray[--index2]) {} 나는 다음과 같이 풀어 보았습니다. while(true) { if(myArray[++index1] < pivot) break; if(myArray[++index1] …
StringJava 에서 인쇄 할 수없는 모든 문자를 제거하는 가장 빠른 방법은 무엇입니까 ? 지금까지 138 바이트, 131 자 문자열을 시도하고 측정했습니다. 문자열 replaceAll()- 가장 느린 방법 517009 결과 / 초 패턴을 미리 컴파일 한 다음 Matcher의 replaceAll() 637836 결과 / 초 StringBuffer 사용, codepointAt()하나씩 사용하여 코드 포인트 가져 오기 및 …