일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 딥러닝
- 네트워크
- 데이터과학
- 파이썬
- 코딩
- 알고리즘
- 보안
- 컴퓨터공학
- 컴퓨터과학
- 데이터분석
- 네트워크보안
- I'm Sorry
- Yes
- 데이터구조
- 프로그래밍언어
- 2
- 클라우드컴퓨팅
- 자료구조
- 컴퓨터비전
- 소프트웨어
- 소프트웨어공학
- 웹개발
- 프로그래밍
- 머신러닝
- 데이터베이스
- 자바스크립트
- 빅데이터
- 사이버보안
- 인공지능
- 버전관리
- Today
- Total
스택큐힙리스트
왜 "B"를 인쇄하는 것은 "#"를 인쇄하는 것보다 현저히 느린가요? 본문
나는 1000 x 1000 의 두 행렬을 생성했습니다.
첫 번째 행렬: O 및 #!@.
두 번째 행렬: O 및 B.
다음 코드를 사용하여 첫 번째 행렬을 완료하는 데 8.52초가 소요되었습니다.
Random r = new Random();
for (int i = 0; i < 1000; i++) {
for (int j = 0; j < 1000; j++) {
if(r.nextInt(4) == 0) {
System.out.print(O);
} else {
System.out.print(#);
}
}
System.out.println();
}
이 코드로 두 번째 행렬은 완료까지 259.152초가 걸렸습니다.
Random r = new Random();
for (int i = 0; i < 1000; i++) {
for (int j = 0; j < 1000; j++) {
if(r.nextInt(4) == 0) {
System.out.print(O);
} else {
System.out.print(B); //only line changed
}
}
System.out.println();
}
극명하게 다른 실행 시간의 이유는 무엇인가요?
의견에서 제안한 대로, System.out.print(#); 만 출력하면 7.8871 초가 걸리고, System.out.print(B); 는 still printing... 를 생성한다.
다른 사람들도 정상적으로 작동한다는 것을 지적한 것 처럼, 나는 예를 들어 Ideone.com를 시도해봤고, 두 개의 코드 조각이 동일한 속도로 실행됩니다.
시험 조건:
이 테스트를 Netbeans 7.2에서 실행하고 콘솔에 출력했습니다.
제가 측정에 System.nanoTime()을 사용했습니다.
답변 1
순수한 추측으로, 당신은 문자를 감쌀 대신에 word-wrapping을 시도하는 터미널을 사용하고 있으며, B는 단어 문자로 취급되지만 #!@은 비-단어 문자로 처리되는 것 같습니다. 따라서 줄 바꿈을 위해 줄 끝에 도달하면 거의 즉시 #!@를 발견하고 쉽게 줄 바꿈됩니다. 반면에 B는 더 오래 찾아야 하므로 감싸야 할 텍스트가 더 많을 수 있으며, 일부 터미널에서 비용이 많이 들 수 있습니다(예: 후퇴 및 감싸는 문자를 덮어 쓰기 위해 공백 출력).
하지만 그것은 순수한 추측입니다.
답변 2
정확한 프린터 속도가 중요한 중요한 상황에서, B를 출력할 때 #(해시 태그)를 출력하는 것보다 놀랍게도 느린 경우가 종종 있습니다. 왜 그럴까요? 이번 글에서는 이러한 문제의 원인과 해결책을 살펴보겠습니다.
#는 일반적으로 프린팅에 사용되기 때문에, 대부분의 프린터는 그에 대한 처리 능력을 갖추고 있습니다. 반면, B는 평균적인 웹 페이지에서 가장 많이 사용되는 단어 중 하나이지만, 프린팅에 필요한 것보다는 복잡한 경우가 많습니다. 이는 B가 다른 글자와 함께 사용될 때 발생하는 문제입니다.
더 자세히 말하자면, B는 선명하고 깨끗하게 인쇄되도록 조정되어 있습니다. 따라서, 이를 인쇄할 때는 프린터가 많은 정보를 다루어야 합니다. 이러한 정보는 프린터 모델, 폰트 및 종이 종류 등에 따라 다릅니다. 따라서, B를 인쇄하기 위해 프린터는 실행해야 하는 연산이 많아지는 결과를 낳습니다.
#와 같은 문자는 인쇄하기가 더 쉽습니다. 이는 B와 달리 매우 간단한 형태의 문자입니다. 따라서, 프린터는 더 적은 양의 정보를 처리하여 #(해시 태그)를 출력할 수 있습니다.
하지만, 이러한 문제를 해결하기 위해 여러 가지 방법이 있습니다. 먼저, 다른 폰트를 사용할 수 있습니다. 이는 B와 같은 문자를 간단하게 인쇄할 수 있도록 돕는 것입니다. 또한, 인쇄할 때 프린터 해상도를 줄이는 것도 가능합니다. 이를 통해 프린터가 다루어야 하는 정보의 양을 줄이면서 B를 인쇄할 때 더 빠르게 처리할 수 있습니다.
결론적으로, B를 인쇄할 때 #(해시 태그)를 인쇄할 때보다 더 많은 시간이 걸리는 이유는 복잡한 폰트와 관련된 문제입니다. 하지만, 이러한 문제를 해결하기 위해 여러 가지 방법이 존재하며, 이러한 방법을 통해 프린터 시간을 절약할 수 있습니다.
[Keywords]
프린트, '#', 'B', 폰트, 해상도