목록알고리즘 (66)
min
오늘은 HashMap과 Map에 대해서 알아볼려고 한다. 먼저 내가 이 두 단어를 들었을 때 처음 들었던 생각은 둘다 Map이라는 단어가 들어가는 어떤 부분에서 다른 거지? 어떤 부분이 다르게 작용하는 거지? 라는 궁금중이 들었다. 아마도 이 글을 읽고 이는 독자 분들도 그런 생각이 들었을 것이다. 그래서 나는 이 두가지 개념의 공통점과 차이점을 바탕으로 살펴보려고 한다. 1. HashMap과 Map의 공통점 먼저 HashMap과 Map의 공통점은 어떤 데이터를 키와 값 형태로 관리하는 자료구조라는 점이다. 즉 이 2가지 개념은 모두 자료구조라는 것이다. 그렇다면 이 2가지 개념은 어떻게 데이터를 관리할까? 2. HashMap과 Map의 차이점 그 방법에서 HashMap과 Map의 차이점이 발생한다. H..
https://school.programmers.co.kr/learn/courses/30/lessons/12914?language=javascript 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(n) { let arr = []; arr[0] = 1; arr[1] = 1; for(let i = 2; i
https://school.programmers.co.kr/learn/courses/30/lessons/12985 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr //A와 B가 같을 때까지 다음 과정을 수행한다. //A와 B를 2로 나눈다. //나눈 값을 반올림한다. //answer를 하나 올린다. //answer를 리턴한다. function solution(n,a,b) { var answer = 0; while(a !== b) { a = Math.ceil(a / 2); b = Math.ceil(b / 2); answer++; } return answer;..
https://school.programmers.co.kr/learn/courses/30/lessons/12980 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(n) { let answer = 0; while(n > 0) { if(n % 2 === 1) { n -= 1; answer += 1 } n /= 2; } return answer; } function solution(n){ if(n === 1) return 1; const nArr = Array.from(n.toString(2)); return nArr.reduce..
https://school.programmers.co.kr/learn/courses/30/lessons/12981 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(n, words) { var answer = []; let data = [words[0]]; for(let i = 1; i < words.length; i++) { if(words[i].at(0) !== data[data.length - 1].at(-1)) { return [i % n + 1 , Math.floor(i / n) + 1] } else if (data...
https://school.programmers.co.kr/learn/courses/30/lessons/67256 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(numbers, hand) { var answer = ''; let numbersIndex = { 1 : [0,0], 2 : [0,1], 3 : [0,2], 4 : [1,0], 5 : [1,1], 6 : [1,2], 7 : [2,0], 8 : [2,1], 9 : [2,2], 0 : [3,1], "*" : [3,0], "#" : [3,2], }; let left = ..
https://school.programmers.co.kr/learn/courses/30/lessons/155652# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr //s의 길이만큼 반복하면서 다음 과정을 수행한다. //index의 길이만큼 반복하면서 다음 과정을 수행한다. //만약 skip에 해당 단어가 있다면 index를 올리지 않는다. //만약 skip에 해당 단어가 없다면 index를 올린다. //index만큼 뒤에 있는 알파벳을 answer에 더한다. //answer를 리턴한다. function solution(s, skip, index) { v..
https://school.programmers.co.kr/learn/courses/30/lessons/140108?language=javascript 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(s) { let answer = 0; let var1 = 0; let var2 = 0; let i = 0; while (s.length > 0) { if (s[0] === s[i]) { var1++; i++; } else if (s[0] !== s[i]) { var2++; i++; } if (var1 === var2) { s =..