자바
-
[백준] Java - 줄 세우기메모/알고리즘 2022. 6. 1. 23:52
2252번: 줄 세우기 첫째 줄에 N(1 ≤ N ≤ 32,000), M(1 ≤ M ≤ 100,000)이 주어진다. M은 키를 비교한 회수이다. 다음 M개의 줄에는 키를 비교한 두 학생의 번호 A, B가 주어진다. 이는 학생 A가 학생 B의 앞에 서야 한다는 의 www.acmicpc.net 백준의 위상정렬 문제 줄 세우기의 자바 풀이다. 위와 같이 순서가 정해져 있고 사이클이 없는 그래프를 정렬하는 알고리즘이 위상정렬이다. "진입 차수"와 "인접 리스트"를 통해서 문제를 해결할 수 있었다. 위의 그림에서 6을 보면 4와 5로부터 진입하는 것을 볼 수 있다. 2개의 노드가 6으로 진입하므로 진입 차수는 2이다. 반대로 1이나 2는 진입차수가 0이다. 인접리스트를 통해 연결된 다음 노드를 저장하고 진입차수가 ..
-
[백준] Java - 미로 탐색메모/알고리즘 2022. 4. 27. 23:01
2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 1 9 10 11 12 2 8 12 3 7 13 14 4 5 6 14 15 정말 쉬운 BFS 문제이자 FloodFill 알고리즘을 사용하는 문제이다. 파이썬으로 코테를 준비하다가 자바를 새로 준비해보려니 자바 자체의 문법을 이용하는게 좀 오래 걸렸다. 1, 1의 좌표에서 n, m 좌표까지의 최단 거리를 출력하면 된다. 기본적으로 이동할 수 있는 위치를 표시하는 배열과 방문 여부를 확인하는 배열을 입력 값의 크기만큼 할당하고 시작한다. 위의 표 처럼 다음 이동할 위치에는 현재 위치의 값에 1을 ..
-
[JAVA] 입출력개발/Java 2022. 4. 25. 20:37
우리가 자바를 통해서 일반적으로 입출력을 처리하는 방법에 대해서 알아본다. 파이썬의 경우 sys.stdin.readline(), input(), map(), split() 등을 이용하는 것처럼 여러가지의 경우를 정리할 것이다. 추가 내용이 있을 경우 업데이트 예정 일반적인 입출력 import java.io.*; import java.util.*; public class Main { public static void main(String[] args){ /* 입력 */ Scanner sc = new Scanner(System.in); int n = Integer.parseInt(sc.nextLine()); /* 출력 */ System.out.println(n); } } Scanner와 표준 출력을 활용한 ..
-
[Java] Error : new double no suitable constructor found for Double(no arguments)개발/Java 2022. 3. 27. 19:01
소수 값을 이용해야해서 Double 형의 변수를 선언해줄 필요가 있었다.Double var = new Double();/*error: no suitable constructor found for Double(no arguments) Double var = new Double(); ^ constructor Double.Double(double) is not applicable (actual and formal argument lists differ in length) constructor Double.Double(String) is not applicable (actual and formal argument li..
-
[Java] java.lang.UnsupportedOperationException개발/Java 2021. 11. 20. 22:36
안드로이드 앱 개발 중 에러가 발생해서 찾아보았다. Array를 List로 변환할 때 생기는 에러라고 한다. 아래 코드에서 처럼 Arrays.asList(배열명)를 사용해서 리스트로 변환하고 변수에 할당하면그 변수는 수정할 수 없다고 한다. 따라서 생성자를 통해 변환해주는 것으로 해결했다. //String 배열 선언String[] localNodes;...//변환 전arrayList = new ArrayList();list = Arrays.asList(localNodes);arrayList.addAll(list);//변환 후//Array -> List를 asList 변환 시, 아래와 같이로 선언해야 수정가능.arrayList = new ArrayList();list = new ArrayList(Array..