본문 바로가기
728x90
반응형

java108

LinkedHashSet에 대하여 JAVA에는 다양한 Set, Map의 종류가 있습니다. 그 중, 저장 순서를 보장하면서 중복을 제거해주는 HashSet의 역할을 하는 LinkedHashSet이 있습니다. LinkedHashSet set = new LinkedHashSet(); 으로 선언할 수 있고, 일반적인 set과 동일하게 사용하시면 됩니다. 해당 라이브러리를 활용해서 풀 수 있는 문제 https://www.acmicpc.net/problem/13414 13414번: 수강신청 입력 데이터는 표준 입력을 사용한다. 입력은 1개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 과목의 수강 가능 인원 K(1 ≤ K ≤ 100,000)와 학생들이 버튼을 클릭한 순서를 기록한 대기목 www.acmicpc.net ※ 추후 CPP로 구현해 볼.. 2023. 11. 1.
C++ 코드를 JAVA로 바꿔보자 오늘은 https://www.acmicpc.net/problem/2557 문제를 통과하는 코드인 cpp 코드를 java코드로 바꿔주는 소스를 작성해 봤습니다. 2557번: Hello World Hello World!를 출력하시오. www.acmicpc.net 코드 컨벤션을 준수한 코드를 기준으로 작성했습니다. 테스트 cpp 코드 #include using namespace std; int main(){ cout 1 && s[1].contains("main")) { sb.append("public class Main {").append("\n"); sb.append("public static void main(String[] args)").append(iostream ? "throws IOException.. 2023. 10. 10.
알고리즘 학습 방법 알고리즘 오픈톡방에 있다 보면 여러 가지 알고리즘 학습 관련 질문들이 들어옵니다. 이에 대한 답변들을 정리해서 블로그 링크를 드리게 위해 작성해 봤습니다. 1. 백엔드 개발자인데 JAVA로 알고리즘을 학습해야 할까요? 언어는 그저 도구이며, 가장 자신 있는 언어로 알고리즘 학습을 하는 게 맞습니다. 그러나, 특정 회사들은 직군별 코딩테스트 언어를 제한하고 있습니다. 이러한 회사들을 위해서라면, JAVA로 준비하는 게 좋으나 한 가지 언어를 잘 다룰 수 있다면, 다른 언어로 알고리즘 준비를 하는 데는 얼마 걸리지 않다고 생각이 들기 때문에 자유롭게 선택하셔서 하시면 될 거 같습니다. 2. 알고리즘 학습은 어떻게 하는 게 좋을까요? 학습 방식은 사람마다 다릅니다. 저는 특정 알고리즘으로 풀리는 문제의 소스를.. 2023. 3. 6.
메모리 제한 풀기 백준 문제를 풀다보면, "메모리 초과" 일명 "메초"라고 불리는 result를 받을 수 있습니다. 그럴때마다 보통은 "사용하지 않아도 되는 배열 및 메모리 감소"를 하여 "메모리 초과"를 해결합니다. 그러나, 그렇게 해도 되지 않는 몇몇 외국어 문제들이 존재합니다. 그런 경우에는 2가지 방법이 있습니다. 1. System.gc()로 gc를 수동으로 실행하기 System.gc(); System.gc()는 반환이 없는 void로 그냥 선언하시면 됩니다. 이렇게 할 경우, 더 이상 사용하지 않은 메모리들을 수동으로 gc를 실행시켜 제거해 줍니다. (보통은 선언하지 않고 사용해도 JAVA는 자동으로 GC가 처리를 해줍니다.) ※ 주의 : PS에서만 사용하시고, 실제 현업에서는 사용하지 마세요. https://c.. 2023. 2. 9.
728x90
반응형