일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 자료형
- 백준
- 알고리즘
- char[]
- string
- AWS
- github
- JAVA기초
- 서버중단
- LiveTemplate
- 통신대란
- 큐
- 서버오류
- OVH
- Java
- Leetcode
- 코딩테스트
- 데이터센터
- Queue
- 자동완성
- linux
- 논리학
- elasticbeanstalk
- Intellij
- thymeleaf
- 명제
- springboot
- dfs
- 코테
- github cli
- Today
- Total
목록분류 전체보기 (26)
Midnight Coder's Lounge

개요 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..
블로그에 개발일지를 작성하기로 하였습니다. 그간 팀프로젝트를 3차례 진행했지만, 막상 포트폴리오를 작성하기로 마음먹고 프로젝트를 돌이켜 보니 프로젝트 진행 당시의 진척현황과 그 때마다 배운 점을 복기하기가 쉽지 않았습니다. 3차 프로젝트 때 개인 노션에다가 당면한 문제를 수시로 메모해 두었지만 말 그대로 메모로 활용하는 데 그친 감이 있고, 또 진행 당시엔 시간에 쫓겨 한 문제를 해결하면 곧장 다음 문제로 넘어가느라 기록에 신경을 쏟지 못했는데, 지금처럼 개인 시간이 많을 때를 기회로 삼아 기록하는 습관을 들이고 숙달하기로 하였습니다. 블로그 개설 당시에는 방문객들에게 보여드릴 글만 분리해서 쓰고, 어느 정도 완성된 글이 아니면 쓰지 말자는 생각이었지만, 실제 1~2년 가량 카테고리별로 개발일지를 작성하..

개요 IntelliJ에서 많은 코드가 자동 완성으로 등록되어 있지만, 그 외에도 자주 쓰는 코드를 간편하게 호출하고 싶을 때가 있을 것입니다.많은 IDE에서 개발자가 직접 자동 완성을 등록하여,짧은 줄임말로 원하는 코드를 호출하는 기능을 지원하고 있습니다.IntelliJ의 경우 Live Templates라는 옵션을 통해 가능한데요,함께 살펴보도록 하겠습니다. * 커뮤니티 버전(CE)에서도 사용 가능한 기능입니다. 상세 1. 상단 메뉴에서 File > Settings 로 들어갑니다. (또는, Ctrl + Alt + S) 2. 사이드바에서 Editor 탭을 열어 Live Template을 선택합니다.3. 목록에서 원하는 언어 그룹을 선택하고, 우측의 [ + ] 탭을 눌러 [1. Live Templat..

https://atomicliquors.tistory.com/8 [Leetcode][Java] 투 포인터로 더욱 빠른 배열 연산을 수행해 보자(1) 투 포인터 알고리즘 : 배열을 효율적으로 탐색하기 위해, 동시에 두 개의 포인터를 사용하여 배열을 순회하는 알고리즘입니다. 별도의 정렬 알고리즘 없이 정렬된 배열을 얻을 수 있게 해 주거 atomicliquors.tistory.com 지난 시간에 이어서, Leetcode에 등록된 배열 문제의 투 포인터 알고리즘 솔루션을 알아보겠습니다. 167. Two Sum II - Input Array Is Sorted Given a 1-indexed array of integers numbers that is already sorted in non-decreasing o..

투 포인터 알고리즘 : 배열을 효율적으로 탐색하기 위해, 동시에 두 개의 포인터를 사용하여 배열을 순회하는 알고리즘입니다. 별도의 정렬 알고리즘 없이 정렬된 배열을 얻을 수 있게 해 주거나, 이중반복문으로 처리해야 할 문제를 반복문 하나로 처리하거나, 추가적인 배열 생성 없이 그대로 배열을 수정하는(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 함수를 접해오셨을 겁니다. ..
정렬된 두 묶음의 숫자 카드가 있다고 하자. 각 묶음의 카드의 수를 A, B라 하면 보통 두 묶음을 합쳐서 하나로 만드는 데에는 A+B 번의 비교를 해야 한다. 이를테면, 20장의 숫자 카드 묶음과 30장의 숫자 카드 묶음을 합치려면 50번의 비교가 필요하다. 매우 많은 숫자 카드 묶음이 책상 위에 놓여 있다. 이들을 두 묶음씩 골라 서로 합쳐나간다면, 고르는 순서에 따라서 비교 횟수가 매우 달라진다. 예를 들어 10장, 20장, 40장의 묶음이 있다면 10장과 20장을 합친 뒤, 합친 30장 묶음과 40장을 합친다면 (10 + 20) + (30 + 40) = 100번의 비교가 필요하다. 그러나 10장과 40장을 합친 뒤, 합친 50장 묶음과 20장을 합친다면 (10 + 40) + (50 + 20) = ..
요약 보안상 비밀번호 / 패스워드의 타입은 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..