본문 바로가기

728x90
반응형

Java

(376)
[리뷰] 해결 못한 알고리즘 다시 풀기 -4 1. 캐시 알고리즘 (1) 배열 이용 import java.util.Scanner; public class Main { static int[] solution(int n, int[] arr) { int[] answer = new int[n]; // 캐시 히트, 캐시 미스 -> 위치를 -1로 지정후, pos으로 히트 유무 확인 int pos = 0; for (int i = 0; i 0; j--) { answer[j]=answer[j-1]; } } ..
[리뷰] 정렬 / 스케줄 정리 1. 정렬 알고리즘 버블 정렬 데이터를 인접 요소끼리 비교해, swap 연산을 수행하면서 정렬 선택 정렬 대상에서 크거나 작은 데이터를 찾고, 선택을 반복하면서 정렬 삽입 정렬 대상을 선택해 정렬된 영역에서 선택 데이터의 위치를 찾아 삽입하면서 정렬 퀵 정렬 pivot 값을 선정해 해당 값을 기준으로 정렬 병합 정렬 이미 정렬된 부분들을 효율적으로 병합해 전체를 정렬 기수 정렬 데이터의 자릿수를 바탕으로 비교해 정렬 #운영체제 목적 ① 처리 능력(Throughput) ② 응답 시간(Turnaround Time) ③ 신뢰도(Reliability) ④ 사용 가능도(availability) (1) 메모리 관리 -> 프로그램을 실행하거나 참조하려면, 반드시 메인 메모리에 적재를 한 다음 사용한다. : 메인 메모..
[리뷰] 해결 못한 알고리즘 다시 풀기 -3 1. 올바른 괄호 stack package stackqueue.ch05_2; import java.util.Scanner; import java.util.Stack; //올바른 괄호 //isEmpty로 확인 //push, peek,pop public class Stackqueue01 { public String solution(String str) { String answer = "YES"; Stack stack = new Stack(); for (char x : str.toCharArray()) { stack.push(x); } int cnt = 0; while (!stack.isEmpty()) { if (stack.pop() == ')') { if (stack.isEmpty()) return answ..
[리뷰] 해결 못한 알고리즘 다시 풀기 -2 1. 학급회장 map package hashtree.ch04; import java.util.*; class Main { public char solution(int n, String s) { char answer = ' '; HashMap map = new HashMap(); for (char x : s.toCharArray()) { map.put(x, map.getOrDefault(x, 0) + 1); } //System.out.println(map.containsKey('F')); //System.out.println(map.size()); //System.out.println(map.remove('C')); int max = Integer.MIN_VALUE; for (char key : map.k..
[리뷰] 해결 못한 알고리즘 다시 풀기 -1 1. 중복문자 제거 - 여러가지 방법 이용 (1) StringBuilder 이용 import java.util.Scanner; public class Main { //# 중복문자제거 -> 직접 탐색 제거와 set이용 [set이 좋음] // 소문자의 문자열의 중복된 문자를 제거하고, 출력하는 프로그램 // 제거된 문자는 순서를 유지 // char/char[] -> String : String.valueOf(c) //ksekkset -> kset public static void main(String[] args) { Scanner kb = new Scanner(System.in); String a = kb.next(); System.out.println(solution(a)); kb.close(); } s..
해당 날짜의 날씨보다 따뜻한 날씨가 오는데 걸리는 기간 1. 이중for문 int len=tem.length; int[] result=new int[len]; int count =0, j; for(int i=0;i
자바 필수 메서드 # String과 StringBuilder indexOf() 메서드와 substring() 메서드 while((pos=str.indexOf(' '))!=-1) { String tmp = str.substring(0, pos); int len=tmp.length(); if(len>=m) { m=len; answer=tmp; } str=str.substring(pos+1); 1. tmp에 ' '전까지 잘라서 넣는다. 2. str에 자른 부분 나머지 부분을 넣는다. 3. 길이가 m보다 큰 부분을 정답으로 한다. import java.util.Scanner; public class Main { public String solution(String str) { String answer=" "; int m=Inte..
String에 char 추가하기 +) String+=char를 이용하는 방법 import java.util.*; public class Main { public String solution(String str){ String answer=""; StringBuilder sb= new StringBuilder(); char[] arr = str.toCharArray(); for(char x : arr){ if(Character.isLowerCase(x)) answer+=Character.toUpperCase(x); if(Character.isUpperCase(x)) answer+=Character.toLowerCase(x); } return answer; } public static void main(String[] args){ Main..

728x90
반응형