반응형

전체 글 198

Angular(Front) + Node.js(Back) 연동하기

1. Angular.js 프로젝트 생성 @angular-cli 패키지 설치 $ npm i -g @angular/cli angular-cli 설치가 되어 있는 분은 다음으로 넘어가시면 됩니다. Angular.js 프로젝트 생성 $ ng new client Angular 프로젝트를 생성하고자 하는 경로에서 명령어 실행하세요. 서비스 실행 및 확인 $ ng serve --watch 또는 $ pm2 start "ng serve" --name "client" --watch pm2를 사용하시려면 pm2 패키지 설치가 되어 있어야 합니다. pm2 설치는 npm install -g pm2 로 설치하면 됩니다. 윈도우 환경에서는 pm2 start "ng serve" 를 다른 방법으로 실행해야 합니다. 계속 수정하면서 결..

Programming/Angular 2022.07.15

프로그래머스 - 피보나치 수 java :: 모듈로 연산

문제 코딩테스트 연습 - 피보나치 수 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 💣시도1: 재귀함수 보통 피보나치는 재귀로 풀면 쉽습니다. 단, 재귀함수는 연산해야 할 양이 많아지면 차지하는 메모리의 양도 많아지고 처리속도의 효율도 매우 좋지 않아요. n은 최대 10만까지 입력이 가능하므로 재귀로 푸는 방법은 좋지 않은 방법입니다. (사실 저도 처음엔 재귀로 풀었다가 시간초과 나왔습니다.) 💣시도2: 반복문 재귀룰 포기하고 반복문으로 문제를 풀었습니다만... 문제는 7~14번이 계속 오류가..

Algorithm/Java 2022.07.15

프로그래머스 - 하노이의 탑 java (재귀/반복문) :: 12946

문제 링크 코딩테스트 연습 - 하노이의 탑 | 프로그래머스 스쿨 (programmers.co.kr) 문제 이해하기 하노이의 탑 문제는 재귀 함수를 연습하는 대표적인 문제입니다. 재귀 함수를 구현하기 위해서는 규칙을 찾아야 합니다. n=3일 경우로 예를 들어보겠습니다. 이렇게 초기 상태인 [주황+노랑+초록]을 hanoi(n) 이라고 표현하겠습니다. 가장 큰 원판을 3번기둥으로 옮기는 방법은? 가장 아래에 있는 주황색 원판을 3번 기둥으로 옮기기 위해서는 [노랑+초록]이 2번 칸에 있어야 하며, 3번 기둥은 비어있어야 합니다. [노랑+초록]원판을 hanoi(n-1)이라고 표현하겠습니다. [노랑+초록]을 2번 기둥으로 옮기는 방법 [노랑+초록]을 2번으로 옮기기 위해서 위의 과정을 거쳐야 합니다. 1 -> 3..

Algorithm/Java 2022.07.13

프로그래머스 - JadenCase 문자열 만들기 java :: 12951

문제 링크 코딩테스트 연습 - JadenCase 문자열 만들기 | 프로그래머스 스쿨 (programmers.co.kr) 문제 풀이 1번 풀이 모든 문자를 직접 순회하며 조건에 맞게 대/소문자 치환 public String solution(String s) { StringBuilder sb = new StringBuilder(); boolean flag = true; for(char ch : s.toCharArray()) { sb.append(flag ? Character.toUpperCase(ch) : Character.toLowerCase(ch)); flag = (ch == ' ') ? true : false; } return sb.toString(); } 대문자가 되는 기준은 첫문자와 ..

Algorithm/Java 2022.07.12

Node.js + express-session + db(MariaDB/MySQL) 연동 예제 :: 로그인 구현

1. 기본 시작 소스 안내 기본 소스는 branch::ex-auth 에서 시작하며, 완성된 소스는 branch::ex-auth-mysql 입니다. https://github.com/gogoma-code/node-express-auth.git node와 express-session을 활용하는 기본(branch::ex-auth가 만들어지는 과정)은 아래 글을 참고해 주세요. Node.js + express-session :: 프로젝트 생성부터 로그인 구현하기 2. MySQL 예제 테이블 생성 기본적으로 MySQL은 설치가 되어 있다는 가정 하에 진행합니다. SQL 예제 테이블 생성문 /* 만약 test 데이터베이스가 이미 있다면 다른 이름을 사용하세요. */ CREATE DATABASE `test`; USE..

Programming/Node.js 2022.07.11

프로그래머스 코딩테스트 연습 Level 1 클리어 후기 (모든 문제 코드)

프로그래머스 코딩 테스트 풀이 코드 gogoma-code/programmers-codding-test (github.com) 현재는 Level1 JAVA 코드만 업로드 되어 있지만 더 높은 레벨, 다양한 언어를 추가할 예정입니다. 이제 Level 1에는 안 푼 문제는 없어요. 대부분 5분 내에는 풀었고, 조금 더 걸리는 문제들도 있었지만 심심할 때 하나씩 풀기 좋았어요. 처음에 알고리즘을 풀기 시작한 것은 java를 까먹지 않으려고 시작했어요. 최근에 java를 사용하지 않으면서 이대로 두면 언어도 많이 까먹을 것 같고, 또 최신 문법의 활용도 못 따라갈 것 같아서, 알고리즘 풀면서 언어에도 익숙해지려고 시작했어요. 실제로 내가 푼 코드와 다른 사람들의 코드를 비교하면서 문법의 활용성, 문제 해결의 접근..

Study 2022.07.09

프로그래머스 - 로또의 최고 순위와 최저 순위 java :: 2021 Dev-Matching: 웹 백엔드 개발자(상반기)

77484 https://school.programmers.co.kr/learn/courses/30/lessons/77484?language=java#fn1 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 📌로또의 수는 45개이고, 각 배열(lottos, win_nums)의 길이는 6개로 고정입니다. 📌알아야 할 것은 "몇 개를 맞췄느냐?", "몇 개가 낙서되었느냐?" 입니다. 위 두 개의 핵심으로 생각해보면 많이 맞춘 경우는 낙서된 수가 모두 당첨 번호라고 가정하고 [맞춘 개수 + 낙서된 수] 많이 맞추지 못한 경우는 낙서된 수가 모두 꽝이라고 가정..

Algorithm/Java 2022.07.09

프로그래머스 - 신고 결과 받기 java :: 2022 KAKAO BLIND RECRUITMENT

92334 https://school.programmers.co.kr/learn/courses/30/lessons/92334?language=java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 저는 신고자의 기준이 아닌 신고 당하는 사람을 기준으로 코드를 작성했습니다. 📌결과는 신고자의 index의 값을 구해야 합니다. 📌신고자는 같은 유저를 2번 이상 신고해도 1번으로만 처리됩니다. (중복 신고가 불가능합니다.) 중복이 불가능하다는 뜻은 Set이 활용되기 가장 좋은 문제라는 뜻이기도 합니다. 📝풀이1 public int[] solution(St..

Algorithm/Java 2022.07.09

프로그래머스 - 숫자 문자열과 영단어 java :: 2021 카카오 채용연계형 인턴십

81301번 코딩테스트 연습 - 숫자 문자열과 영단어 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 📌각 숫자에 매칭되는 알파벳이 있다. 📌영단어의 위치는 랜덤이며 2번이상 연속으로 영단어가 나올 수도 있다. 📝풀이1 public int solution(String s) { List alphabet = Arrays.asList( "zero","one","two","three","four","five","six","seven","eight","nine"); StringBuilder answer ..

Algorithm/Java 2022.07.08
반응형