728x90

알고리즘/코딩테스트

[프로그래머스/java]수박수박수박수박수박수?

길이가 n이고, 수박수박수박수....와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 수박수박을 리턴하고 3이라면 수박수를 리턴하면 됩니다. 제한 조건 n은 길이 10,000이하인 자연수입니다. 1. String += 는 메모리 소모가 크기 때문에 StringBuffer / StringBuilder 객체 생성 2. 짝수면 n/2까지 반복 3. 홀수면 n/2까지 반복 후 append("수") 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 class Solution { public String solution(int n) { String wm = "수박"; StringBuffer sb = new StringBuffer(); if..

2021.01.03 게시됨

[프로그래머스/java] 문자열을 정수로 바꾸기 포스팅 썸네일 이미지

알고리즘/코딩테스트

[프로그래머스/java] 문자열을 정수로 바꾸기

문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. 제한 조건 s의 길이는 1 이상 5이하입니다. s의 맨앞에는 부호(+, -)가 올 수 있습니다. s는 부호와 숫자로만 이루어져있습니다. s는 0으로 시작하지 않습니다. 입출력 예 예를들어 str이 1234이면 1234를 반환하고, -1234이면 -1234를 반환하면 됩니다. str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다. 1. Integer.valueOf() 메소드 사용 valueOf()메소드는 자동적으로 +는 생략해주며 -는 붙여준다. 1 2 3 4 5 class Solution { public int solution(String s) { return Integer.valueOf(s..

2021.01.03 게시됨

알고리즘/코딩테스트

[프로그래머스/java] 시저 암호

어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 AB는 1만큼 밀면 BC가 되고, 3만큼 밀면 DE가 됩니다. z는 1만큼 밀면 a가 됩니다. 문자열 s와 거리 n을 입력받아 s를 n만큼 민 암호문을 만드는 함수, solution을 완성해 보세요. 문제점 : 1. 다중 if else문으로 너무 복잡하다! 2. String → char[] → String 변환이 잦다. * 해결 포인트 * 1. char + int = int가 되므로 (char)형변환이 필요하다. 2. 대소문자 각각 26개 단위로 끊어지므로 'z' / 'Z'가 넘을 때 -26을 해주어야 한다. 65~90 : A~Z 97~122 : a~z 1 2 3 4 5 6 7 8 9 ..

2021.01.03 게시됨

[Spring] WebSocket을 이용한 1:1 채팅 / 실시간 알림 - [1] 포스팅 썸네일 이미지

Spring/Spring Web

[Spring] WebSocket을 이용한 1:1 채팅 / 실시간 알림 - [1]

1. pom.xml에 dependecy를 추가해준다. 첫번째 spring-websocket은 WebSocket 라이브러리이며, org.springframework.web.socket.handler.TextWebSocketHandler 를 사용 할 수 있게 해준다. * spring 버전과 동일하게 설정하였다. ${org.springframework-version} 두번째 jackson-databind는 웹소켓 채팅의 Json 타입을 Java형태로 바꿔주는 역할을 한다. com.fasterxml.jackson.databind.ObjectMapper 를 사용 할 수 있게 해준다. 1 2 3 4 5 6 7 8 9 10 11 12 org.springframework spring-websocket ${org.spr..

2021.01.02 게시됨

SQL/Oracle

[SQL] INDEX 의미 / 생성 / 수정 / 삭제 / 조회

인덱스 INDEX란? SELECT시 테이블의 색인 역할을 하여 빠르게 검색 할 수 있게 해주는 책의 책갈피와 같은 것, 일종의 객체. 인덱스의 내부 구조는 B*트리(이진트리)형식으로 구성되어 있다. 장점 DQL(SELECT)시 인덱스에서 찾기 때문에 다량의 데이터가 있는 테이블에서 매우 빠른 속도를 보장한다. 단점 DML(INSERT, DELETE, UPDATE)시 인덱스에도 작업이 이루어지므로 속도가 느려진다. 인덱스 생성 CREATE [UNIQUE] INDEX 인덱스명 ON 테이블명( 컬럼명, 컬럼명, .... | 함수명, 함수계산식); 인덱스 수정 인덱스 삭제 인덱스 조회

2020.12.31 게시됨

알고리즘/코딩테스트

[프로그래머스/java]이상한 문자 만들기

문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 class Solution { public String solution(String s) { StringBuilder sb = new StringBuilder(); int index = 0; for(int i=0; i

2020.12.30 게시됨

[SQL / 기본문법] LENGTH / LENGTHB / INSTR / SUBSTR / PAD / TRIM 문자열 관련 함수 포스팅 썸네일 이미지

SQL/Oracle

[SQL / 기본문법] LENGTH / LENGTHB / INSTR / SUBSTR / PAD / TRIM 문자열 관련 함수

1. LENGTH 문자열 길이를 반환 SELECT LENGTH('오라클'), LENGTHB('오라클'), LENGTH('AAA'), LENGTHB('AAA') FROM DUAL; 2. LENGTHB 문자열의 바이트를 반환 오라클 바이트 규격 -- 영문자(1바이트), 공백(1바이트), 한글(3바이트) 3. INSTR 문자열의 위치를 알려준다. 0이 아닌 1부터 시작한다. -- INSTR('문자열' | 컬럼명, '문자', 찾을 위치의 시작값, 빈도) -- SELECT INSTR('HELLO WORLD', 'O') STR1 -- 문자열의 왼쪽에서부터 찾기(기본사용) -- ,INSTR('HELLO WROLD', 'O', -1) STR2 -- 문자열의 오른쪽에서부터 찾기(-1 : 뒤에서부터) -- ,INSTR('..

2020.12.29 게시됨

SQL/Oracle

[SQL / 기본문법] SUM / AVG / MIN / MAX / COUNT 숫자 관련 함수

SUM 합한 결과 SELECT SUM(SALARY) FROM EMPLOYEE; AVG AVG( 컬럼명 )은 NULL 제외 평균 AVG( NVL ( 컬럼명, 0 ))은 NULL 포함 평균 SELECT AVG(BONUS) 기본평균 , AVG(DISTINCT BONUS) 중복제거평균 , AVG(NVL(BONUS,0)) NULL포함평균 FROM EMPLOYEE; MIN 최소값 SELECT MIN(EMAIL), MIN(HIRE_DATE), MIN(SALARY) FROM EMPLOYEE; MAX 최대값 SELECT MAX(EMAIL), MAX(HIRE_DATE), MAX(SALARY) FROM EMPLOYEE; COUNT COUNT( * )은 NULL값을 포함해서 카운트 한다. COUNT( 컬럼명 )은 NULL값을..

2020.12.29 게시됨

[Vue.js] Vue.js 시작하기 - 4 [ 컴포넌트를 사용한 작성방법 ] 포스팅 썸네일 이미지

Vue.js

[Vue.js] Vue.js 시작하기 - 4 [ 컴포넌트를 사용한 작성방법 ]

1. 컴포넌트 생성하기 Vue.component('태그이름',{ template : '태그 작성' } ) 으로 컴포넌트를 생성 할 수 있다. html태그에서 만으로 깔끔한 코드 작성이 가능하다. 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 Document Vue.component('todo-item', { template: '할일 항목 하나입니다.' }) var app = new Vue({ el: '#app' }) Colored by Color Scripter cs 1-1. 하지만 무언가 부족하다. 그냥 html태그를 작성하는 것과 사실 그닥 다르지 않다고 느낀다. Vue인스턴스(부모데이터)로부터 component로..

2020.12.29 게시됨

728x90