일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
29 | 30 | 31 |
- NPM
- Next.js13
- 자바스크립트 알고리즘 문제
- 자바스크립트 문제 풀이
- 제로베이스
- 타입스크립트
- react
- stack문제
- 리액트쿼리
- CSS
- lodash
- 자바스크립트
- 자바스크립트코딩테스트
- JavaScript
- 프론트엔드
- leetcode
- til
- 리액트
- leetcode문제풀이
- 자바스크립트 문제
- Next
- next13
- 자바스크립트 알고리즘
- 알고리즘문제풀이
- 자바스크립트 연결리스트
- Baekjoon
- HTML
- 프로그래머스
- 자바스크립트 문제풀이
- JS
- Today
- Total
목록JavaScript (12)
코드노트
문제는 간단하다 head → 1 → 2 → 3 → null 이렇게 node가 연결되어 있는 연결리스트를 head → 3 → 2 → 1 → null 역순! 반대로 출력하게 수정해야한다. 연결리스트에 대해서 이해가 되어야지만 풀 수 있는 문제였다. 이 문제를 이해하는데 하루가 넘게 걸렸다... 하... 그만큼 성취감은 두배였지만... 제발 바로 이해해줘 내 머리야.. 우선 코드부터 보면서 설명을 해야할거 같다. function answer(ll) { let current = ll.head, prev = null, next; while (current !== null) { next = current.next; current.next = prev; prev = current; current = next; } l..
Longest Common Prefix 가장 긴 공통 접두사 구하기 문제설명 더보기 문자열 배열 중에서 가장 긴 공통 접두사 문자열을 찾는 함수를 작성하십시오. 공통 접두사가 없으면 빈 문자열 ""을 반환합니다. - 문제만 보면 어려운건 없었다. 처음에는 문자를 split으로 나누어서 비교를 해야겠다고 생각했었다. - 결국 index를 활용하는 방법으로 문제를 풀었다. let strs = ["flower", "flow", "flight"]; var longestCommonPrefix = function (strs) { let result = ""; if (strs === null || strs.length === 0) { // input이 없거나 길이가 0이면 종료 return result; } for ..
Roman to Integer 문제 설명 더보기 Roman to Integer Symbol Value I 1 V 5 X 10 L 50 C 100 D 500 M 1000 더보기 로마 숫자는 I, V, X, L, C, D, M의 7가지 기호로 표시됩니다. 예를 들어, 2는 로마 숫자로 II로 표기되며 두 개만 더하면 됩니다. 12는 단순히 X + II인 XII로 작성됩니다. 숫자 27은 XXVII, 즉 XX + V + II로 표기됩니다. 로마 숫자는 일반적으로 왼쪽에서 오른쪽으로 큰 것에서 작은 것 순으로 표기합니다. 그러나 4에 대한 숫자는 IIII가 아닙니다. 대신 숫자 4는 IV로 기록됩니다. 1은 5보다 앞에 있기 때문에 빼서 4가 됩니다. IX로 쓰여진 숫자 9에도 동일한 원칙이 적용됩니다. 빼기가..
더보기 문제 설명 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한사항 array의 길이는 1 이상 100 이하입니..
프로토타입(prototype) // 원형 // 사물의 원래의 모습!? - 객체가 만들어지기 위해서 객체의 모태가 되는 원형 - 자바스크립트는 프로토타입 기반 언어라고 부르기도 한다. prototype based languge - 일반적인 객체 생성 방식: 속성은 생성자, 메서드는 프로토타입에서 정의 // 생성자 속성 정의 function Person(name, age) { this.name = name; this.age = age; } // prototype을 이용한 Person 메서드 정의 Person.prototype.isAudlt = function () { return this.age > 18; }; Person.prototype.isChild = function () { return this...
자바스크립트 달팽이 배열 문제.. 처음에는 풀이를 보면서도 이해가 잘 되지 않았다. unshift, push를 사용해야하는건가? 라는 생각을 했지만 2차원배열을 추가한 후 x, y를 통해서 배열을 가르키는 인덱스 번호를 수정하면서 숫자를 넣어주면 되는 거였다. 나중에 다시 기억을 살릴수 있도록 기록해보려고 한다.. 달팽이 배열 풀이 코드 let result = []; // 1. result => 2차원 배열 for (let i = 0; i < length; i++) { result[i] = []; } /** 2.패턴 기반으로 반복문 구현 * 1) length 길이만큼 시작해서 숫자를 채운다. * 2) length = i만큼 줄어들고, 방향도 바뀌면서, 2회씩 출력한다. * 3) length == 0; 프..
javascript는 알고리즘 공부를 처음 시작할때 레퍼런스나 예시문제들이 많이 없어서 어려웠다. 풀이나 예제문제들을 찾기도 힘들었는데 이번 제로베이스 프론트엔드 과정에서 연습문제를 보면서 공부를 하니깐 어느정도 감은 잡히는거 같다. 알고리즘 공부를 어떻게 시작해야할지 갑갑했는데 그냥 무작정 반복학습으로 이러한 문제 유형들은 이렇게 풀어야하는구나! 라고 생각하면서 공식들을 외워가고있다. 이게 맞게 하고 있는지는 모르겠지만... 문과였던 나는..지금으로선 이방법뿐이다.. 생각하는 루트가 처음에는 한가지 두가지였다면 이제는 세가지 네가지 들이 생각나는거 같다! 1. 자연수를 입력 받은 만큼 문자열을 반환하는 함수. 자연수를 입력을 받아서 문자열로 반환하는 함수는 어렵지 않다. for문을 통해서 자연수만큼 반..
Number - JavaScript | MDN Number 생성자는 숫자를 다루기 위해 상수와 메소드를 가지고 있습니다. 다른 타입의 값은 Number() 함수를 사용하여 숫자로 바꿀 수 있습니다. developer.mozilla.org 초반에 정리했던 Number 메서드를 다시 정리해보려고 한다. 메소드를 제대로 이해하고 싶은데 시간이 지나면 또 까먹는거같다.... 다시 정리해보며 머리에 넣어봐야지..! Number.Properties .MAX_VALUE - 최대 수 / JavaScript가 표현할 수 있는 제일 큰 숫자 값 - 1.7976931348623157e+308 .MIN_VALUE - 최소 수 / JavaScript가 표현할 수 있는 제일 작은 숫자 값 - 5e-324 .MAX_SFAE_INT..
const fs = require("fs"); const input = fs.readFileSync("./input.txt", "utf8") console.log(input); 프론트엔드를 준비하면서 자바스크립트로 알고리즘 공부를 하려고 하면 처음에 시작해야하는게 있다. 파일을 가지고 오려면 require()를 통해서 들고 온다. fs = file system fs 라이브러리 중에서 readFileSync를 통해서 파일을 읽을 수 있는 기능을 제공하는 함수를 가지고온다. input에 담겨 있는 console.log로 출력해보면 문자열로 확인이 가능해진다. 텍스트 파일을 불러오려면 이렇게 진행해야한다. 그 외에 다른방법도 있지만 node.js에서 사용하기 위해서 이렇게 사용한다.
Primitive Type - 오브젝트, 레퍼런스 형태가 아닌 실제 값을 저장하는 자료형 - 프리미티브 형의 내장 함수를 사용 가능한것은 자바스크립트 처리 방식 덕분 - 리터럴 값으로 Primitive 타입의 서브타입을 나타낼 수 있다. Type Casign - TypeScript의 핵심 Primitive type은 모두 소문자이다. boolean let codenote :boolean = true / false; let codenote :true = true; let codenote :false = false; - boolean 소문자로 사용 - true / false number let codenote :number = 123; - javaScript, TypeScript의 모든 숫자는 부동소수점 값..