본문 바로가기

전체 글

(159)
[Javascript] - 변수 프로그래밍 언어는 기억하고 싶은 값을 메모리에 저장하고 저장된 값을 읽어 들여 재사용하기위해 변수라는 메커니즘을 제공한다 변수의 정의를 내려보면 " 변수는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름을 말한다" 간단히 이야기하면 변수는 프로그래밍 언어에서 값을 저장하고 참조하는 메커니즘으로 값의 위치를 가리키는 상징적인 이름이다 상징적 이름인 변수는 프로그래밍 언어의 컴파일러 또는 인터프리터에 의해 값이 저장된 메모리 공간의 주소로 치환되어 실행된다 따라서 개발자가 직접 메모리 주소를 통해 값을 저장하고 참조할 필요가 없고 변수를 통해 안전하게 값에 접근할 수 있다. 1. 변수는 하나의 값을 저장하기 위한 수단이다 var userId = 1; var..
프로그래머스[LEVEL 1]("2020 카카오 인턴쉽") - 키패드 누르기 https://programmers.co.kr/learn/courses/30/lessons/67256 코딩테스트 연습 - 키패드 누르기 [1, 3, 4, 5, 8, 2, 1, 4, 5, 9, 5] "right" "LRLLLRLLRRL" [7, 0, 8, 2, 8, 3, 1, 5, 7, 6, 2] "left" "LRLLRRLLLRR" [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] "right" "LLRLLRLLRL" programmers.co.kr 문제 풀이 문제 유형은 '구현' 유형에 속한다 코드가 엄청 복잡하게 나왔다 LEVEL 1문제 수준에선 상당히 어려운 문제인것 같다 문제 접근법은 먼저 keypad라는 2차원 배열을 선언해주고 그 안에 문제에서 제시한 키패드 값을 넣어주었다 키패드 값을 ..
프로그래머스[LEVEL 1] (위클리 챌린지 2주차) - 상호평가 https://programmers.co.kr/learn/courses/30/lessons/83201 코딩테스트 연습 - 2주차 [[100,90,98,88,65],[50,45,99,85,77],[47,88,95,80,67],[61,57,100,80,65],[24,90,94,75,65]] "FBABD" [[70,49,90],[68,50,38],[73,31,100]] "CFD" programmers.co.kr 문제 풀이 문제풀이는 자바스크립트로 했다 레벨 1 수준이기 때문에 난해한 문제는 아니였지만 문제 이해를 이상하게 해서 시간을 좀 낭비했던 문제다 진짜 코테 문제 풀때는 설명을 똑바로 봐야겠다 어려운 문제도 아닌데 삽질을 하니까 매우 허무했다 문제 풀이법은 문제 설명 그대로 구현을 하면 된다 이 문제에서..
프로그래머스[LEVEL 1](2021 카카오 인턴쉽) - 숫자 문자열과 영단어 https://programmers.co.kr/learn/courses/30/lessons/81301 코딩테스트 연습 - 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자 programmers.co.kr 문제 풀이 풀이 방법은 숫자 영단어를 배열에 값으로 넣어준뒤 el이 숫자인지 판단한 다음 숫자면 바로 result에 문자열로 붙여주고 숫자가 아니라면 영단어 배열에서 해당 단어의 인덱스를 받아와서 result에 붙여준다 그리고 마지막으로 숫자로 형변환을 한다음 return한다.
프로그래머스(2018 카카오 블라인드 코딩 테스트 1차) - 비밀지도 https://programmers.co.kr/learn/courses/30/lessons/17681 코딩테스트 연습 - [1차] 비밀지도 비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다 programmers.co.kr 풀이 코드 function solution(n, arr1, arr2) { const answer = []; const result = []; let sum = 0; let str = ''; for (let i = 0; i < arr1.length; i++) { sum = arr1[i] | arr2[i]; sum = sum.toString(2); answe..
알고리즘 - 정렬 Sort Algorithm 사실 대부분의 프로그래밍 언어에서는 sort메서드를 제공한다 하지만 우리가 정렬 알고리즘을 배워야 하는 이유는 내가 가진 데이터 베이스의 양이나 상황에 따라 어떤 정렬을 사용하는 것이 좋을지 달라지기 때문에 우리는 기본적으로 유명한 정렬 알고리즘 들을 알고 있어야 할 것이다 1. Bubble Sort 가장 먼저 버블 정렬이다 버블 정렬은 마치 거품이 일어나듯이 연쇄적으로 자기 자리를 찾아간다고 하여 버블 정렬이라는 이름이 붙여졌다 위 그림을 보면 알 수 있듯이 데이터를 두개를 묶어서 비교한 후 크기가 큰 쪽이 오른쪽으로 가도록 자리를 바꿔가면서 크기가 큰 데이터를 오른쪽으로 민다 그러면 1회전이 끝남과 동시에 이 리스트에서 가장 큰값이 가장 오른쪽으로 위치한다 즉 n번째 정렬 ..
구름 [LEVEL 3] - 문자열 번갈아 출력하기 https://level.goorm.io/exam/43110/%EB%AC%B8%EC%9E%90%EC%97%B4-%EB%B2%88%EA%B0%88%EC%95%84-%EC%B6%9C%EB%A0%A5%ED%95%98%EA%B8%B0/quiz/1 구름LEVEL 코딩테스트에서 가장 높은 비중을 차지하는 알고리즘 문제를 제작하고 풀이할 수 있는 온라인 저지 서비스입니다. 기업에서 선호하는 C, C++, 파이썬(Python), 자바(Java), 자바스크립트(Javascript) 이 level.goorm.io 문제풀이는 파이썬으로 하였다 str = list(input()) result = [] while len(str) > 0 : result.append(str.pop(0)) if len(str) > 0 : resul..
프로그래머스 [LEVEL 1] - 체육복 https://programmers.co.kr/learn/courses/30/lessons/42862?language=javascript 코딩테스트 연습 - 체육복 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번 programmers.co.kr 문제 풀이는 JS와 파이썬으로 하였습니다 사실 예전에 이미 한번 풀었던 문제인데 그 당시에 굉장히 어려워했던 기억이 난다 다시 푸는 지금 생각보다 굉장히 쉬운 문제였고 그때보다 좀 더 효율적인 풀이도 생각하게 된거 같다 function solution(n, lost, reserve) { const realReserve = res..