일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- web in app
- 앱 권한
- 경우의 수
- bfs dfs
- 완전탐색
- 버튼 활성화
- 자료구조
- Project Bee
- 원복
- 폴더구조
- 휴대폰 기기
- 비트마스킹
- 찜하기
- BFS
- web view
- React Native
- 구현
- 관심내역
- 백준 1992
- 해외 대외활동
- apk파일 추출
- react
- FlatList
- 창의충전소
- 이영직
- React Natvive
- ReactNative
- 노마드코더
- Navigation
- backHandler
- Today
- Total
유미의 기록들
📌 요구사항1. Calculator클래스 생성 - 양의 정수 2개와 연산 기호를 매개변수로 받아 사칙연산 기능을 수행한 후 결과 값을 반환하는 메서드 - 연산 결과를 저장하는 컬렉션 타입 필드 - 나눗셈에서 분모에 0이 들어오거나 연산자 기호가 잘못 들어온 경우 예외처리2. main메서드에서 Calculator 클래스의 컬렉션 필드에 직접 접근하지 못하도록 수정 (캡슐화) - Getter메서드, Setter메서드 구현3. 가장 먼저 저장된 데이터를 삭제하는 기능을 가진 메서드 구현 -removeResults()4. 저장된 연산 결과들을 조회하는 기능을 가진 메서드 구현 - inquiryResults()5. Calculator 인스턴스 생성할 때 생성자를 통해 컬렉션 필드가 초기화..
Java언어로 총 3단계로 이루어진 계산기 프로그램 과제를 수행하면서 궁금한 점이나 문제를 해결한 점에 대해 기록해보려고 한다 📌 요구사항1. 양의 정수 2개와 사칙연산 기호 입력 - 적합한 타입으로 선언한 변수에 저장2. 연산을 진행한 후 결과 값을 출력한다 - 연산 오류가 발생할 경우 해당 오류에 대한 예외처리3. 무한으로 계산을 진행할 수 있도록 구현 - "exit" 문자열 입력 시 종료4. 연산 결과 10개를 저장할 수 있는 배열 생성하고 결과를 저장 - 연산결과가 10개를 초과하는 경우, 가장 먼저 저장된 결과를 삭제하고 새로운 연산 결과가 저장되도록 구현5. 연산결과가 무한이 저장될 수 있도록 수정 - JCF 사용 - "remove" 문자열 입력 시..
싱글톤 패턴 (Singleton Pattern)하나의 클래스에 오직 하나의 인스턴스만 가지는 패턴 보통 하나의 클래스를 기반으로 여러 개의 개별적인 인스턴스를 만들 수 있지만, 싱글톤 패턴은 하나의 클래스를 기반으로 단 하나의 인스턴스를 만들어 전역변수와 같이 다른 모듈들이 공유하여 쓰도록 설계한다 보통 데이터베이스 연결모듈에 많이 사용한다 싱글톤 패턴 적용 전import java.util.*;import java.io.*;public class Car{ Car(){ } void powerOn(){ System.out.println("전원을 켰습니다"); } void stop(){ System.out.println("멈췄습니다"); }}import..
개인 프로젝트를 개발해보면서 스프링 웹 애플리케이션 개발의 전반적인 학습을 하려고 한다 SpringBoot 프레임워크는 다른 프레임워크와 다르게 웹사이트에서 만들 수 있다. 그래서 정말 간단하게 프로젝트를 생성할 수 있다 1. 사전 준비물✅ JAVA17이상 설치, 환경변수 설정✅ IDE 설치 (IntelliJ 또는 Eclipse) 나는 IntelliJ를 쓰려고 한다! 2. Spring initializer 에 접속한다 스프링부트 프로젝트를 만들어주는 사이트인 https://start.spring.io/로 이동해서 스프링 프로젝트를 생성한다 3. 프로젝트 환경 설정프로젝트 설정 ⚙️ Project : Gradle - Groovy Gradle과 Maven은 많은 라이브러리들을 관리하고 프로젝트..
이분탐색 (Binary Search)오름차순으로 정렬되어 있는 리스트에서 같은 크기의 두 부분으로 나누고 필요한 부분에서만 탐색하도록 제한하여 원하는 데이터를 찾는 알고리즘 1. 정렬된 배열의 중간요소와 어떠한 대상 값을 비교한다2. 그 요소가 아닌 경우 절반을 제거하고 나머지 절반에서 검색을 반복한다 2-1. 그 요소가 중간요소보다 작을 경우, 왼쪽으로 다시 탐색 2-2. 그 요소가 중간요소보다 클 경우, 오른쪽으로 다시 탐색 이렇게 정렬된 배열에서 중간값이 어떠한 대상 값보다 큰지, 작은지 비교하고 탐색 범위를 반으로 나누기 때문에 시간복잡도는 logN이다. v배열에서 찾는 값이 n일때 코드이다while(l n) r = mid - 1; else if(v[mid] == n) r..
그리디 알고리즘 (탐욕법, Greedy Algorithm) 각 단계에서 최적이라고 생각하는 것인 지역적 최적해가 궁극적으로 전역최적해가 되는 것즉, 여러 경우 중 선택의 순간마다 최적이라고 생각하는 것을 선택해나가면서 최종적인 해답에 도달하는 알고리즘 ⚠️</s..
📌 문제 📝 풀이과정1) [1,2,3,4]와 같이 입력된 문자열을 int형 숫자로 바꾸기- 문자열 "[1,2,3,4]" 의 0부터 끝까지 반복 1-1) '['와 ']'일때 continue 1-2) '숫자' 일때 아래 식처럼 계산하여 숫자로 변환하기x=x*10+(aChar-'0'); 1-3) ',' 일때 Deque에 x를 저장하고 x를 초기화 2) RDD 와 같은 명령 실행⚠️ R(뒤집기)를 수행할 때 매번 뒤집기를 수행하면 시간초과가 발생한다 (배열에 들어있는 개수가 10만이기 때문) 💡RR일때는 뒤집지 않아도 된다💡Deque를 사용 뒤집혔는지 상태를 확인해서 뒤집혔으면 뒤에 부분 제거, 뒤집히지 않았으면 앞에부분 제거를 한다ex) [1,2,3]일 때- RRD이면 앞..
📌 문제 📝 풀이과정비트연산자를 활용하는 비트마스킹 문제이다이렇게 집합을 비트로 표현할 수 있다. - addx번째 비트가 꺼져있다면 x번째 비트 켜기S | = (1(x 번째 비트가 켜져있어도 x번째 비트는 켜기 때문에 x번째 비트가 꺼져있는 지 확인하지 않아도 된다) - removex번째 비트가 켜져 있다면 x번째 비트 끄기S &= ~(1(x 번째 비트가 꺼져있어도 x번째 비트는 끄기 때문에 x번째 비트가 켜져있는지 확인하지 않아도 된다) - checkx번째 비트가 켜져있으면 1출력, 꺼져있으면 0 출력if (S & (1 - toggle x번째 비트가 켜져있으면 끄고, 꺼져있다면 켜기 (XOR연산)S ^= (1 - all1번째부터 20번째 비트까지 모두 켜기S = (1 - empty1번째부터 2..
📌 문제 💻 코드import java.util.*;import java.io.*;public class Main2{ static int n,targetMp,targetMf,targetMs,targetMv; static int minCost=Integer.MAX_VALUE; static class Ingredient{ int mp,mf,ms,mv,cost; public Ingredient(int mp,int mf,int ms,int mv,int cost){ this.mp=mp; this.mf=mf; this.ms=ms; this.mv=mv; this.cost=cost; } } public static void main(String[] args) throws IOExce..
📌 문제 📝 풀이과정1. 열을 확인하는 방향과 행을 확인하는 방향이 있어야 하므로 열과 행이 바뀐 행렬을 만들어서 map을 두개로 만들어 주었다. 2. map1 과 map2는 같은 로직으로 행마다 지나갈 수 있는 길인지 체크한다 2-1. 각 행에서 현재 값과 다음 열의 값과 같다면 cnt++ 2-2. 현재값이 다음 열의 값보다 높이 차이가 1 작고 cnt가 l이상이면 cnt=1 2-3. 현재 값이 다음 열의 값보다 높이 차이가 1 크고 cnt가 0이상이면 cnt=- l+1 2-4. 각 행의 끝까지 돌아서 cnt가 0이상이면 길의 개수 증가 💻 코드import java.util.*;import java.io.*;public class Main{ static int n,l,ret;..