전체 글 110

[프로그래머스] 특수문자 출력하기

처음에 엥? 이렇게 쉬운걸??이라고 생각했지만 오히려 함정이 있었다.정말 간단하지만 쉽게 간과하여 넘어갔던 부분이 있었다는 것을..!너무나 간단하게도console.log(!@#$%^&*(\'"?:;); 이런식으로 전부 다 출력하면 되는 거 아닌가?라고 생각했는데 실행한 결괏값!@#$%^&*('"?:;이 기댓값!@#$%^&*(\'"?:;과 다릅니다.라는 결과가 나와서 확인했더니 \ 자바스크립트에서 역슬래시 (\)는 이스케이프 문자 라고한다,그럼 어떻게 출력하느냐? 궁금해서 검색해 봤더니 '\'를 출력하고 싶을 땐 '\\' 이런 식으로 2개를 사용해서 출력해야 한다는 것을 알게 되었다.❓궁금증 그러면 '\\' 두개를 연속으로 출력하고 싶을 땐 어떻게 하나 궁금증이 생기게 되었다. 단순하게도 그냥 '\\'..

카테고리 없음 2025.07.09

[프로그래머스] 대소문자 바꿔서 출력하기

const readline = require('readline');const rl = readline.createInterface({ input: process.stdin, output: process.stdout});let input = [];rl.on('line', function (line) { input = [line];}).on('close',function(){ str = input[0]; function swapCase(str) { let swapped = ""; for (let i =0; i 문제를 풀기위해 알아야할 것char.toUpperCase()→ 대문자로 바꾼 문자열을 반환char.toLowerCase()→ 소문자로 바꾼 문자열을 반환char ..

카테고리 없음 2025.07.09

[JavaScript 프로그래머스 공부] 배열 원소의 길이

배열 원소의 길이내가 직접 풀어본 코드function solution(strlist) { let answer = []; for(let i = 0; i.length는 문자열의 길이를 알려주는 속성으로 반복문을 돌면서 이걸 하나씩 구해서 배열에 담으려면 push()를 사용하면 됨!push(문자열.length) 이런식으로 배열안에 값이 차곡차곡 들어가도록 하기다른방식 1function solution(strlist) { return strlist.map(str => str.length);}map으로 배열을 순회하면서 새로운 배열을 만들고 각문자열의 길이만 뽑아서 새로운 배열로 만들어서 돌려준다!map방식으로 해볼걸 생각을 못했다.. 조금 더 단순하지 않은 방식으로 풀어보도록 노력해봐야겠다..!

카테고리 없음 2025.04.22

[JavaScript 프로그래머스 공부] 짝수의 합

짝수의 합 내가 직접 풀어 본 코드function solution(n) { let answer = 0; for (let i = 0; i%를 사용해서 나머지가 1일 땐 홀수 0일 땐 짝수로 구분하고 조건을 줘서 짝수끼리만 더할 수 있도록 하기 다른 방식 1function solution(n) { let answer = 0; for (let i = 0; i if문을 빼고 조건 없이 처음부터 짝수만 반복하는 코드 짝수만 반복하면 되는 문제였는데 굳이 조건문을 넣어서 불필요한 코드를 늘렸다.. 생각해 보니까 굳이 넣어도 되지 않았는데 ㅜㅜ다음엔 조금 더 효율적인 코드를 짜기 위해 노력해야겠다. 다른 방식 2function solution(n) { var half = Math.floor..

카테고리 없음 2025.04.22

19주차 (1)

📌 NestJS + Redis Geo 기능 정리🚀 NestJS에서 Redis의 Geo 기능을 활용한 위치 데이터 저장 및 조회1️⃣ Redis Geo 개념✅ Geo 데이터란?위도(Latitude) & 경도(Longitude) 좌표를 기반으로 위치 정보를 저장 및 검색하는 기능Redis는 GEOADD, GEOSEARCH 등의 명령어를 제공✅ Geo 데이터 저장 구조Redis에서는 위치 데이터를 GeoSet(정렬된 Set) 형태로 저장함Key: "bookmarksS" Member: "1" (북마크 ID) Value: (Longitude, Latitude)2️⃣ NestJS에서 Redis Geo 기능 적용✅ 📌 Geo 데이터 추가 (geoadd)async geoAddBookmarkS( key: st..

카테고리 없음 2025.03.03

18주차 (1)

15. Stack과 Queue 비교 설명Stack과 Queue는 데이터를 저장하고 관리하는 자료구조이며, 각각 고유한 방식으로 데이터를 처리합니다.1) Stack (스택)정의: Stack은 LIFO(Last In, First Out, 후입선출) 원칙을 따르는 자료구조입니다.특징:데이터를 한쪽 끝(Top)에서만 추가(push)하고 제거(pop)할 수 있음.재귀 함수 호출, 수식 계산(예: 후위 표기법), 브라우저 뒤로 가기 등의 기능에 사용됨.주요 연산:push(item): 데이터를 스택의 맨 위(Top)에 추가.pop(): 스택의 맨 위 데이터를 제거하고 반환.peek(): 스택의 맨 위 데이터를 확인하지만 제거하지 않음.isEmpty(): 스택이 비어 있는지 확인.2) Queue (큐)정의: Queue..

카테고리 없음 2025.02.24

17주차 (4)

13. DFS와 BFS의 차이DFS (깊이 우선 탐색)방식: 한 방향으로 가능한 한 깊게 탐색한 후, 더 이상 갈 수 없으면 이전 단계로 돌아와서 다른 방향을 탐색합니다.자료구조: 주로 스택(또는 재귀 호출 스택)을 사용합니다.특징:재귀적으로 구현하기 쉽습니다.메모리 사용이 상대적으로 적을 수 있지만, 경우에 따라 최악의 경우 재귀 깊이가 너무 깊어질 수 있습니다.경로 탐색 문제(예: 미로 찾기)에서 한 방향으로 깊게 탐색해 빠르게 해답을 찾을 수 있는 경우 유리합니다.BFS (너비 우선 탐색)방식: 시작 노드에서부터 인접한 모든 노드를 먼저 탐색한 후, 그 다음 레벨로 넘어갑니다.자료구조: 큐를 사용하여 현재 레벨의 모든 노드를 관리합니다.특징:최단 경로 문제(예: 최단 거리 찾기)에 적합합니다.모든 ..

카테고리 없음 2025.02.20