level 1 : 서울에서 김서방 찾기
https://programmers.co.kr/learn/courses/30/lessons/12919?language=java
코딩테스트 연습 - 서울에서 김서방 찾기
String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니
programmers.co.kr
🎯 코드(C++)
#include <string>
#include <vector>
using namespace std;
string solution(vector<string> seoul) {
string answer = "";
for(int i=0; i<seoul.size(); i++){
if(seoul[i] == "Kim"){
return "김서방은 " + to_string(i) + "에 있다";
}
}
return answer;
}
🎯 코드(JAVA)
class Solution {
public String solution(String[] seoul) {
String answer = "";
for(int i=0; i<seoul.length; i++){
if(seoul[i].equals("Kim")){
return "김서방은 " + i + "에 있다";
}
}
return answer;
}
}
🎯 설명
정수를 문자열로 바꾸기
- int num = 1;
- C++ : to_string(num);
- JAVA : Integer.toString(num);
String 비교
- string s = "KIM";
- C++ : s == "KIM";
- JAVA : s.equals("KIM");
JAVA와 C++ 속도 비교(C++보다 자바가 느린 이유)


두 언어의 속도를 비교한 결과 매우 많이 차이나는 것을 확인할 수 있다.
C++보다 자바가 느리다는 것은 알았지만 이번 문제에서는 특히 느리다.
C++보다 자바가 느린 이유는 다음 링크에 나와있다.
https://sungpi.postach.io/post/wae-hangsang-jabajavaneun-c-boda-neuringa
왜 항상 자바Java는 C++보다 느린가?
이 글은 Dejan Jelovic님의 글을 번역 한 글입니다. 수 많은 오역이 있을 수 있습니다. 피드백 부탁드립니다! “자바Java는 높은 능률Performance을 가졌다. 그럭저럭 높은 능률. 그리고 그럭저럭 이란 느
sungpi.postach.io
결론적으로 C++는 기계어에서 바로 실행되어 상대적으로 Bytecode에서 다시 컴파일하는 JAVA보다 실행속도가 빠르다.
자바와 C++의 차이는 다음에 더 자세히 알아보도록 한다.
'알고리즘 > 프로그래머스' 카테고리의 다른 글
프로그래머스(C++, JAVA) / level 1 : 문자열 내 p와 y의 개수 (0) | 2022.03.30 |
---|---|
프로그래머스(C++, JAVA) / level 1 : 약수의 합 (0) | 2022.03.30 |
프로그래머스(C++, JAVA) / level 1 : 문자열을 정수로 바꾸기 (0) | 2022.03.25 |
프로그래머스(C++, JAVA) / level 1 : 수박수박수박수박수박수? (0) | 2022.03.25 |
프로그래머스(C++, JAVA) / level 1 : 내적 (0) | 2022.03.25 |
댓글