일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 다이나믹 프로그래밍
- 그래프 이론
- BASIC
- 문자열
- CSS
- lv2
- BFS
- 자바스크립트
- 백준
- 그래프 탐색
- 정렬
- 딕셔너리
- programmers
- 너비 우선 탐색
- JavaScript
- 그리디 알고리즘
- 구현
- level2
- 웹 프론트엔드
- 프로그래머스
- 자료구조
- 브루트포스 알고리즘
- 그래프이론
- web
- DFS
- 파이썬
- DP
- 알고리즘
- 스택
- 프로그래머스스쿨
- Today
- Total
목록알고리즘 (18)
DevLog:-)

✔️자료구조와 알고리즘이 중요한 이유 자료구조와 알고리즘이란 무엇일까? 요리에 비유하면 이해하기 쉽다! 떡, 어묵, 소시지 같은 재료는 데이터 칼, 프라이팬 등의 도구는 자료구조 레시피는 알고리즘이 된다. 완성된 요리는 소프트웨어 요리를 먹는 손님은 소프트웨어 이용자이다~🍴 자료구조 메모리를 효율적으로 사용하며 빠르고 안정적으로 데이터를 처리하는 것이 목표로 특정 구조를 이룬다. 상황에 맞는 자료구조 선택은 필수! ex) stack, queue, graph, tree 알고리즘 특정 문제를 효율적이고 빠르게 해결하는 것이 목표로 정해진 일련의 절차나 방법을 공식화한 형태로 표현한 것이다. ex) Binary Search, Shortest Path 이러한 자료구조와 알고리즘은 왜 중요할까? 실무에서 중요한 ..

문제 구명보트 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 1 function solution(people, limit) { let visited= Array(people.length).fill(0); people.sort((a,b)=>b-a); let length = people.length; let count =0; for(let i in people){ if(visited[i]==0){ for(let j = length-1; j > i ;j--){ if(visited[j]==0){ if(people[i]+people[j] 효율성 테스트 1개 ..

문제 카펫 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 function solution(brown, yellow) { var answer = []; let x,y; let i =1; while(i 2+1 = (brown-4)/2 = (10 - 4)/2 = 3 - 그 약수 값에서 2씩 더한 값(2+2,1+2) = return 값 [4,3] 2) brown 24, yellow 24 /return [8,6] - yellow의 약수 짝에서 합이 (brown-4)/2와 같은 짝 (6,4) => 6+4 = (brown-4)/2 = (24 - 4)/2 = 10..

문제 프로세스 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 function solution(priorities, location) { let q1 = [...priorities]; let q2 =[]; let p,l; let count =0; for (let i in q1){ q2.push(parseInt(i));} while(q1){ p = q1.shift(); l = q2.shift(); if(Math.max(...q1)>p){ q1.push(p); q2.push(l);} else{ count++; if(l==location){ return c..

문제 모음사전 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 function solution(word) { var answer = 0; let arr=[]; let li = ['A','E','I','O','U']; let result; function dfs(i,n,arr){ answer++; if(arr == word){result=answer;} if(n>4){return;} for(let j of li){ dfs(j,n+1,arr+j); i++; } } for(let i of li){ dfs(i,1,i); } return result; } df..

문제 소수 찾기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 function solution(numbers) { var answer = 0; let set = new Set(); let visited = Array(numbers.length).fill(0); let Num = Array.from(numbers); Num =Num.map((e)=>parseInt(e)) //문자열-> 숫자 배열로 변환 function check(n){ let k = n>4 ? n/2 : n; for(let i =2 ;i

문제 기능개발 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 function solution(progresses, speeds) { var answer = []; let list =[]; let k; for(let i in progresses){ k = ((100-progresses[i])/speeds[i]); if(parseInt(k)!=k){k = parseInt(k)+1;} list.push(k); } let min = list[0]; let sum =0; for(let i of list){ if(min Math.ceil((100 - progr..

문제 괄호 회전하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 function solution(s) { var answer = 0; function check(a) { let stack=[]; for(let i of a){ //console.log(i); if(i == "[" || i =="(" || i =="{"){ stack.push(i); } else{ if(i == ']'){i = '['} else if(i =='}'){i ='{'} else if(i ==')'){i ='('} if(stack.pop() != i){ return false..

문제 의상 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 종류별 옷 수를 +1 해서 각각 곱하면 되는 문제이다. 제공된 배열에서 종류별 옷 수를 찾는 코드를 작성하는 것이 핵심이다. 코드 처음에 작성한 코드 (c배열에는 옷종류를 n배열에는 c배열 순서에 맞춰서 종류별 개수를 누적했다. ) function solution(clothes) { var answer = 1; let c =[]; let n =[]; let N; for (let i of clothes){ if(!c.includes(i[1])){ c.push(i[1]); n[c.indexOf(i[1]..