일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Leetcode
- 데이터센터
- Intellij
- Java
- springboot
- 자동완성
- 코딩테스트
- thymeleaf
- string
- 서버오류
- LiveTemplate
- 논리학
- github
- 코테
- PR
- 자료형
- 통신대란
- 명제
- JAVA기초
- linux
- OVH
- elasticbeanstalk
- AWS
- 서버중단
- 백준
- Queue
- random
- github cli
- 큐
- char[]
- Today
- Total
목록Java (7)
Midnight Coder's Lounge
스택 자료구조를 다루는 감이 떨어져 스택 문제를 복습했습니다. 풀고 나니 예상보다 티어가 높은 문제였네요. * 선수지식 : Stack, (List) 문제 링크 https://www.acmicpc.net/problem/2504 개요 "괄호의 짝이 맞는지 확인하고, 괄호의 쌍이 나타내는 값의 합계를 구하세요".- 괄호 '()'는 감싸고 있는 값들을 전부 합해서 2를 곱해줍니다. 괄호 안이 비었다면 2를 나타냅니다.- 괄호 '[]'는 감싸고 있는 값들을 전부 합해서 3을 곱해줍니다. 괄호 안이 비었다면 3을 나타냅니다.() = 2[] = 3([]) = 2 * 3 = 6()[] = 2 + 3[()[]] = 3 * (2 + 3) = 15[([])[]] = 3 * ( (2 * 3) + 3 ) = 27 이 규칙에..
정말 오랜만에 올리는 포스팅입니다. 백준 알고리즘 문제를 하나 풀어보도록 하겠습니다. 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 개요 골드 4 난이도 시뮬레이션 문제입니다. 골드 난이도라지만 복잡한 알고리즘 지식이 필요한 문제는 아닙니다. 이차원 배열과 큐 Queue 정도의 자료구조를 문제풀이에 응용할 줄 알고, 문제의 요구사항을 꼼꼼히 구현하는 능력이 있다면 풀 수 있는 문제였습니다. 코드 [제출 결과] [코드] import java.io.BufferedReader; import java.io.IOExcept..
개요 public static void main(String[] args){ System.out.println( randomString(-229985452) + " " + randomString(-147909649) ); }public static String randomString(int i){ Random ran = new Random(i); StringBuilder sb = new StringBuilder(); while (true) { int k = ran.nextInt(27); if (k == 0) break; sb.append((char)('`' + k)); } return s..
투 포인터 알고리즘 : 배열을 효율적으로 탐색하기 위해, 동시에 두 개의 포인터를 사용하여 배열을 순회하는 알고리즘입니다. 별도의 정렬 알고리즘 없이 정렬된 배열을 얻을 수 있게 해 주거나, 이중반복문으로 처리해야 할 문제를 반복문 하나로 처리하거나, 추가적인 배열 생성 없이 그대로 배열을 수정하는(in-place modification) 등등, 시간/공간복잡도를 줄여주는 유용한 접근법입니다. Leetcode에 등록된 실제 예제를 통해 투 포인터 알고리즘에 대해서 알아보겠습니다. 977.Squares of a Sorted Array Given an integer array nums sorted in non-decreasing order, return an array of the squares of eac..
요약 main 함수는 자바 프로그램의 시작점이다.자바가상머신(JVM)은 main이라는 이름을 가진 메서드를 찾아 프로그램을 시작한다.- public : JVM이 main함수를 찾을 수 있도록 한다.- static : JVM이 main함수를 곧바로 실행할 수 있도록 한다.- void : main함수가 종료되면 프로그램도 종료되므로, return값이 필요하지 않다.- String[] args : 커맨드라인 등을 통해, main함수 내부에서 사용할 수 있는 String 데이터를 전달할 수 있다. 상세 모든 Java 프로그램은 main 함수(메서드)부터 시작합니다.그렇기 때문에 Java를 배우신 분들이라면,Java를 처음 시작하여 "Hello World"를 출력할 때부터 main 함수를 접해오셨을 겁니다. ..
요약 보안상 비밀번호 / 패스워드의 타입은 String이 아닌 char[]을 사용하는 것이 좋습니다. - String의 데이터는 char[]보다 오랫동안 남기 때문입니다. - String의 데이터는 콘솔 등에 직접 출력될 우려가 크기 때문입니다. 상세 왜 String이 아닌 char[]를 사용하는가? 이어질 내용들은 패스워드의 타입과 관하여 Stackoverflow에 작성된 게시글과 그 답변 내용을 가공한 것입니다. "why is char[] preferred over String for passwords?" 질문자 : Ahamed, 2012.01.16. 수정/보완 : Rakete1111 "Java Swing에서, 비밀번호 입력 필드는 getText() 메소드(반환타입 String)가 아니라 getPas..
요약 🙋♂️ Q : 서로 다른 두 String 변수를 == 로 비교해 보았습니다. 분명히 똑같은 값인데 왜 false가 나오죠? 👨💻 A :String끼리 값을 비교할 땐 '=='를 쓰지 말고 '.equals()'를 쓰세요. 상세 String 변수 str1을 선언하고, "hello"라는 값을 저장했습니다.또다른 String 변수 str2를 선언하고, Scanner를 통해 값을 입력받도록 했습니다.입력받은 str2의 값이 str1과 일치하면 "입력 내용 일치!"라는 메시지가 뜨게 하고 싶습니다. 코드: //str1과 str2 선언String str1 = "hello"; Scanner sc = new Scanner(System.in);String str2 = sc.next();//str1과..