문제 설명 N개의 서로 다른 정수로 구성된 배열 A가 제공됩니다. 배열에는 [1..(N + 1)] 범위의 정수가 포함되어 있습니다. 이는 정확히 하나의 요소가 누락되었음을 의미합니다. 당신의 목표는 누락된 요소를 찾는 것입니다. 함수 작성: 기능 솔루션(A); 배열 A가 주어지면 누락된 요소의 값을 반환합니다. 예를 들어, 주어진 배열 A는 다음과 같습니다. A[0] = 2 A[1] = 3 A[2] = 1 A[3] = 5 함수는 누락된 요소이므로 4를 반환해야 합니다. 다음 가정에 대한 효율적인 알고리즘을 작성하십시오 . N은 [ 0 .. 100,000 ] 범위 내의 정수입니다 . A의 요소는 모두 별개입니다. 배열 A의 각 요소는 [1..(N + 1)] 범위 내의 정수입니다. 풀이 코드 function..
코드 function solution(priorities, location) { let answer = 0; let compareArr = []; let finArr = []; let print; // 처음 지정한 출력물이 나중에 몇번째로 이동해있는지 찾기위해 인덱스와 함께 있는 형태로 2차 배열을 만들어줌 priorities.forEach( (elem, idx) => { let temp = [idx, elem]; compareArr.push(temp) }) // 비교할 배열의 첫번째 값을 가지고 그 뒷 값들중 큰게 있냐 없냐로 비교배열에서 뺴서 finArr에 담을지 아니면 가장 뒤로 옮길지 결정함 while(compareArr[0]){ print = compareArr.shift(); if(compar..
최초 풀이 function solution(array, commands) { var answer = []; for (var i = 0; i < commands.length; i++){ let selectedArray = array.slice(commands[i][0] - 1, commands[i][1]); selectedArray.sort(); answer.push(selectedArray[commands[i][2] - 1]) } return answer; } 제출하면 테스트 1개가 실패했다고 나온다. 풀이 방식은 맞는 거 같은데 어디서 틀렸는지 계속 찾다가 이유를 알게 되었는데 바로 sort() 메서드 부분이었다. sort 메서드는 compareFunction을 받는 메서드인데, compareFunct..
호이스팅에 대해 알아보자 console.log(score); // undefined var score; // 변수 선언문 위 코드블럭을 보면 선언하기 전에 변수를 console.log에 담았으니 ReferenceError(참조에러) 가 발생할 것처럼 보인다. 하지만 에러 없이 "undefined"가 출력된다. 그 이유는 변수 선언이 소스코드가 한 줄씩 순차적으로 실행되는 시점, 즉 런타임(runtime)이 아니라 그 이전 단계에서 먼저 실행되기 때문이다. 자바스크립트 엔진은 소스코드를 한 줄씩 순차적으로 실행하기 앞서(runtime 이전) 먼저 소스코드의 평가과정을 거치면서 소스코드를 실행하기 위한 준비를 한다. 이때 소스코드 실행을 위한 준비 단계인 소스코드의 평가 과정에서 자바스크립트 엔진은 변수 선..
이력서 포트폴리오 보완과 면접대비 이번 한주는 형편없는 나의 이력서와 포트폴리오를 채용담당자분들이봤을때 매력이 1정도는 있는 상태로 탈바꿈시키기위한 구글링과 고민을 계속해서 했던것 같다. 그러다보니 현업에서 활동중이신 여럿 뛰어난 개발자분들의 화려한 이력과 프로젝트 내용들로 빼곡히 차있는 이력서들을 보게되었는데 자괴감이 들법도 했지만 나도 어서 취업해서 이분들처럼 다양한 나만의 개발경험들로 채워가보고 싶다는 생각이 들었다. 그리고 면접 준비를 하며 새롭게 알게되는 중요하다 생각되는 개념들(거의 전부다지만..)은 Git에 TIL로 가볍게 정리 해두려한다. 다시 힘차게 달려보자. 애플 클론코딩 자바스크립트로 애플홈페이지 클론코딩을 시작했다. 스크롤에 반응하는 인터렉션에 대해 확실히 숙지하고 어느정도 능숙해지..
프로젝트 종료, 본격 취업준비 모든 프로젝트가 무사히 종료되었다. 99일간의 항해도 끝이 났고 본격적으로 취업을 위한 기술면접 대비 모의면접을 3차례 실시하였는데, 나의 부족함을 아주 깊게 느끼게 되었다. 그래도 덕분에 다시 못 짚고 넘어갔던 개념들 짚어보면서 예전에 이해 안 됐던 내용들을 보았는데 그때는 잘 읽히지도 않던 글들을 금방 이해하고 "아~"라는 탄식의 리액션을 취하는 내 모습을 보고 신기했다. 아직 갈길이 멀지만 그래도 꽤 많이 성장해온 것 같다. 이력서와 포트폴리오를 본격적으로 작성중이다. 적을게 많이 없어서 볼품없지만 신입들은 다 같은 상황일 거라고 위안 삼고 없는 내용 좀 덜 없어 보이게 작은 부분이라도 채워 넣는 중이다. 즐겁다.
프로젝트 소개 : 그날 수면한 시간과 컨디션, 수면에 영향을 미치는 태그 등을 기록함으로써 개개인에 맞는 적정 수면시간을 제공합니다. 개발기간 : 21.04.23 - 21.05.28 팀구성 : Front-end 3명, Back-end 2명, Designer 2명 페이지 구성 인트로 페이지 로그인/회원가입/비밀번호 찾기 메인 페이지 글 작성 수정, 삭제 날짜 검색, 오늘 날짜 이동 가이드 페이지 분석 페이지 모바일 기술 소개 React JWT token(Access + Refresh) setTimeout 활용 토큰 자동 연장 카카오 소셜 로그인(REST-API) Chart.js, nivo 캘린더 & 카드 구현(CRUD) Route Axios Redux 느낀 점 실제 배포하여 사용자들의 피드백을 받고 개선하..
실전 프로젝트 마무리 단계 돌입 이제 유저들로부터 피드백을 받고 받은 피드백 반영하는 등 새로운 것을 만드는 것보다는 기존 기능들에서 발생하는 각종 오류들을 잡는 것에 집중을 할 듯하다. 채널 톡 연결(피드백 및 오류 문의) 처음엔 설문을 넣을까 했지만 당장 나도 설문에 비협조적이기 때문에 유저들의 피드백을 좀 쉽게 받기 위해 채널 톡이라는 서비스를 이용했다. 정말 쉽게 연결되어 놀랐고 실제 모르는 유저들의 문의글이 올라올 때마다 아직도 흠칫한다. 리뷰 같은 거 적을 때 잘 써줘야겠다고 느꼈다. HTTPS 도메인 연결 S3 밖에 할 줄 몰랐는데 SSL 연결하면서 CloudFront와 Route53, CLI, Certificate Manager 등 정말 많은 기능을 써서 연결시켰다. 사실 아직도 어떤 원리..