알고리즘, 자료구조 38

[프로그래머스/javascript] 2016년 문제 풀기

문제 정답 처리 된 코드(1) function solution(a, b){ var answer = new Date(2016, a-1, b).toString().slice(0, 3).toUpperCase(); return answer; } console.log(solution(5, 24)); 문제 이해 1) date 함수를 사용하면 아래 내용이 출력된다. Tue May 24 2016 00:00:00 GMT+0900 (대한민국 표준시) 2) 잘라내기 위해서 string 으로 바꾼다. 3) 요일 부분을 자른다. 정답 처리 된 코드(2) function solution(a, b) { var week = new Array('SUN', 'MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT'); v..

[프로그래머스/완전탐색/javascript] 모의고사 코드 및 설명

다른 분 코드 보면서 이해하고 배운 내용을 작성해보자. 문제 정답 처리된 코드 function solution(answers) { let pattern = [ [1,2,3,4,5], [2,1,2,3,2,4,2,5], [3,3,1,1,2,2,4,4,5,5] ]; let count = [0, 0, 0]; for(let i in answers){ if(pattern[0][i%5] === answers[i]){ count[0]++; } if(pattern[1][i%8] === answers[i]){ count[1]++; } if(pattern[2][i%10] === answers[i]){ count[2]++; } } let max = Math.max(...count); let answer=[]; for(let ..

[알고리즘] 삼각형인가요? (codewars)

function isTriangle(a,b,c) { let answer=true, max; let total_sum = a+b+c; if(a>b) max = a; else max = b; if(c > max) max = c; if(max >= (total_sum-max)) answer = false; return answer; } 세 수가 주어졌을 때 가장 큰 수가 나머지 2개의 수를 합한 것보다 크거나 같으면 삼각형을 이룰 수 없다는 점을 알면 코드를 작성할 수 있다. 출처 : www.codewars.com/kata/56606694ec01347ce800001b/train/javascript Codewars: Achieve mastery through challenge Codewars is where d..

[알고리즘][자료구조] 큐

1. 큐 큐는 먼저 넣은 데이터가 먼저 나오는 구조로 저장하는 형식 [예시] 줄을 서는 경우, 먼저 줄을 서면 먼저 나간다. 마지막에 들어간 사람은 마지막에 나간다. 2. 용어 First In First Out 먼저 들어간 것 먼저 나감 Enqueue 큐에 데이터 넣음 Dequeue 큐에서 데이터 꺼냄 3. 라이브러리 라이브러리를 사용해서 큐를 이용할 수 있다. put 데이터 넣을 때

[알고리즘][빅오] 빅오표기법

출처 : 누구나 자료구조와 알고리즘 (제이웬그로우 지음, 심지현 옮김) 3장 빅 오 표기법 중 알고리즘에 필요한 단계 수를 하나의 수로 못 박을 수 없기 때문이다. 빅 오 표기법은 수학에서 유래하지만 이 책은 수학 용어 없이 컴퓨터 과학과 연관 지어 설명한다. 3-1. 빅 오 : 단계 수 계산 빅 오는 시간 단위가 아닌 알고리즘에 필요한 단계 수만을 고려함으로써 일관성을 유지한다. O(N)은 배열 내에 N개의 원소가 있을 때 알고리즘을 끝내는데 N개의 단계가 필요함을 표현하는 "빅 오"의 방법이다. 3-2. 상수 시간관 선형 시간 빅 오 표기법이 알고리즘에 걸리는 단계 수를 단순히 22나 400같은 고정된 수보다 더 의미 있게 표현한다는 것을 알았다.

[알고리즘]집합, 정렬된 배열

누구나 자료구조와 알고리즘 (저자: 제이 웬그로우, 심지현 옮김) 책으로 알고리즘 공부를 시작했다. 책 한 권 읽고 강의를 들어보려고 한다. 오늘 공부한 부분은 36 - 45페이지 까지다. 책 발췌 - 집합은 중복 데이터가 없어야 할 때 유용하다. - 집합에서는 먼저 이 값이 이미 집합에 들어 있는지 결정해야 한다. 중복 데이터를 막는 게 바로 집합의 역할, 따라서 모든 삽입에는 검색이 우선. - 집합 삽입에서 최선의 시나리오에는 원소 N개에 대해 N+1단계가 필요. - 맨 앞에 삽입하는 경우 총 2N+1 (전체 N 검색하고 다시 돌아와서 맨 앞에 삽입 후 오른쪽으로 N번 옮겨야 하므로) - 컴퓨팅 관점에서 알고리즘은 특정 연산을 풀어나가는 절차를 뜻함

반응형