본문 바로가기

분류 전체보기139

[TIL-002] 알고리즘 - 신규 아이디 추천(2021 KAKAO BLIND RECUITMENT) Today목표 : 4/11일 Challenger's Challenge 5개 문제 풀기 ✅ 알게된 점, 1. 신규 아이디 추천 카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 가입하는 유저들이 카카오 아이디 규칙에 맞지 않는 아이디를 입력했을 때, 입력된 아이디와 유사하면서 규칙에 맞는 아이디를 추천해주는 프로그램을 개발하는 것입니다.다음은 카카오 아이디의 규칙입니다. 1단계 new_id의 모든 대문자를 대응되는 소문자로 치환합니다. 2단계 new_id에서 알파벳 소문자, 숫자, 빼기(-), 밑줄(_), 마침표(.)를 제외한 모든 문자를 제거합니다. 3단계 new_id에서.. 2023. 4. 12.
[TIL-001] 알고리즘 - 에라토스테네스의 체(소수를 구하는 방법) Today목표 : 4/10일 Challenge 11개 문제 풀기 ✅ 알게된 점, 1. 진법 전환 방법 1. 10진법을 3진법으로 변환 => toString()을 이용 string.toString(3) 2. 3진법을 10진법으로 변환 => parseInt()를 이용 parseInt(string,3) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 에라토스테네스의 체(소수를 구하는 방법) 요구사항 : 배열 중에서 3개의 수를 뽑아 더하는 모든 경우의 수 중에서, 소수가 되는 경우의 개수를 구하라 문제사항 1. 배열에서 3자리 수를 뽑아 더해서 만들 수 있.. 2023. 4. 12.
[WIL-002] 자바스크립트 기초 언어 주간 🦄 WIL : 자바스크립트 기초 언어 복습 + 알고리즘 ✨진행 날짜 : 4/2 ~ 4/8일 이번 주는 자바스크립트 기초 언어 주간이다. 온보딩 스터디에서 학습했던 내용들을 바탕으로 한 번 더 복습한다는 생각으로 진행했다. 마지막 이틀정도는 알고리즘 주간으로 넘어가 프로그래머스 알고리즘 문제를 풀었다. 이번 주 회고를 작성해보려고 한다. 이번주 목표, 달성 여부 1. Git을 통해 협업하는 기본적인 방법 - fork와 full requests, 협업 테스트 해보기 ✅(완료) 2. 자바스크립트 기초 강의 1~5주차 🟡(진행중) 3. 알고리즘 풀이 총 26문제 풀이✅(완료) 무엇을 공부했나? 이번주에 공부한 것들은 다음과 같다. 1. Git을 통해 협업하는 기본적인 방법 - fork와 full requests.. 2023. 4. 8.
[JavaScript] 실행 컨텍스트와 this바인딩(this binding) 💡리마인드 - 실행 컨텍스트는 실행할 코드에 제공할 환경 정보들을 모아놓은 객체이다. - 그 객체 안에는 3가지가 존재한다. ✓ VariableEnvironment ✓ LexicalEnvironment ✓ ThisBindings 상황에 따라 달라지는 this this는 실행 컨텍스트가 생성될 때 결정된다. 이 말을 this를 bind한다(=묶는다) 라고도 한다. 다시 말하면 this는 함수를 호출할 때 결정된다. 1. 전역 에서의 this 런타임 환경에 따라 this는 window(브라우저 환경) 또는 global(node 환경)를 가리킨다. 런타임 환경? 여러분들이 javascript로 만들어놓은 프로그램이 구동중인 환경을 말하죠. 우리는 node 파일이름.js로 vscode 상에서 구동하고 있으니 n.. 2023. 4. 5.
[JavaScript] 실행컨텍스트(스코프, 변수, 객체 호이스팅) 실행 컨텍스트 자바스크립트의 실행 컨텍스트는 실행할 코드에 제공할 환경 정보들을 모아놓은 객체다. 자바스크립트는 어떤 실행 컨텍스트가 활성화되는 시점에 record(hoisting), outer, this값을 설정 한다. 1) 콜 스택 코드를 실행할 때 필요한 환경 정보들을 모아 컨텍스트를 구성하고 이것을 위에서 설명드린 ‘스택’의 한 종류인 콜스택에 쌓아올린다. 가장 위에 쌓여있는 컨텍스트와 관련된 코드를 실행하는 방법으로 코드의 환경 및 순서를 보장할 수 있다. 실행 컨텍스트에 담기는 정보 1. VE => VariableEnvironment 1) 현재 컨텍스트 내의 식별자 정보(=record)를 갖고있다. var a = 3의 경우, **var a**를 의미, 선언부 현재 컨텍스트와 관련된 코드의 식별.. 2023. 4. 5.
데이터 타입 심화, 메모리 데이터 타입 종류 기본형과 참조형을 나누는 기준 : 값의 저장 방식과 불변성 여부에 따라 나뉜다. 💡 [기본형과 참조형의 구분 기준] 복제의 방식 기본형 : 값이 담긴 주소값을 바로 복제 참조형 : 값이 담긴 주소값들로 이루어진 묶음을 가리키는 주소값을 복제 불변성의 여부 기본형 : 불변성을 띔 => var나 let은 값이 변경되는데? => 메모리 관점에서 봐야 불변한지 아닌지 파악 가능 참조형 : 불변성을 띄지 않음 자, “불변성을 띈다” 이 말을 이해하기 위해서 우리는 메모리와 데이터에 대한 내용을 이해해야만 합니다. 아래에서 그 배경지식을 낱낱이 살펴보기로 합시다 😎 메모리와 데이터에 관한 배경지식 1. 메모리, 데이터 1)비트 컴퓨터가 이해할 수 있는 가장 작은 단위죠 0과 1을 가지고 있는 메모.. 2023. 4. 4.