전체 글

스택(Stack)이란?스택이란 먼저 입력한 데이터를 가장 나중에 꺼낼 수 있는 자료구조이다. 먼저 입력한 데이터는 아래에 깔리고 그 위에 차곡차곡 데이터가 쌓인다. 데이터를 꺼낼려면 가장 위에 쌓인 데이터를 꺼내야 하므로 가장 마지막에 입력된 데이터가 꺼내진다.이러한 규칙을 선입후출, First In Last Out(FILO)라고한다.스택에 데이터를 삽입하는 연산을 Push, 스택에서 데이터를 꺼내는 연산을 Pop이라고 한다.스택의 ADT메서드 및 변수설명boolean isFull()스택에 데이터의 갯수가 MaxSize와 같다면 true, 그렇지 않다면 false를 반환한다.boolean isEmpty()스택에 데이터가 없는 경우 true를 반환, 그렇지 않으면 false를 반환한다.void push(I..
1. 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr2. 풀이 과정핵심 로직처음 걸어본 길의 길이를 구해야 하므로 중복해서 걸은 길은 체크하지 않는다.만약 좌표의 범위를 넘어서는 걸음이 있다면 그 걸음은 무시한다.2시간 넘게 풀어보다가 결국엔 실패했다. 막힌 부분: 핵심 로직 1번접근 방식1. 처음에는 각 좌표평면의 모든 점과 1:1 대응되는 2차원 배열을 만들어 해당 점을 방문할 때 마다 방문 처리를 하고    이후에 움직인 지점이 이미 방문 처리가 된 곳이라면 이미 걸은 길이라고 판단 하지만 이렇게 하면 다음의 경우 문제가 발생한다.7번 움직임의 경우..
1. 문제2. 풀이 과정문제의 기본 조건 정리N: 스테이지 갯수stages[i]: i번째 유저의 현재 스테이지stages의 길이: 유저 수실패율[n]: 현재 n번째 스테이지에 있는 유저 수 / n번째 스테이지 이상인 유저 수문제 접근 방식각 스테이지에 대한 실패율을 구해 하나의 배열에 저장한다.실패율을 구하기 위해선 분자(현재 n번째 스테이지에 있는 유저 수)와 분모(n번째 스테이지 이상인 유저 수)를 구해야한다.각각을 구한 뒤 나누어서 배열에 저장하면 된다.실패율 배열 정보를 가지고 높은 순으로 순서대로 결과 배열에 저장한다.3. 내 코드import java.util.*;class Solution { public int[] solution(int N, int[] stages) { ..
1. 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr2. 풀이 과정행렬의 곱셈 방식을 알고 있다면 어렵지 않게 풀 수 있는 문제이다.행렬의 곱셈 방식      1. A의 열과 B의 행의 크기(k)가 같아야 성립한다.      2. 결과 배열의 크기는 [A의 행 크기(m)][B의 열 크기(n)]이다.       3. 결과 행렬 (i,j)의 성분은 A의 i번째 행, B의 j번째 열의 성분들을 각각 순서대로 곱하고 더한 값과 같다.       4. 각각의 성분에 대한 연산 횟수(덧셈 횟수)는 A의 열(또는B의 행)수(k)와 같다.이점을 알고 있다면 쉽게 구현할..
jaehee1113
나의 개발 발자취