목록스택 (8)
개발자는 기록이 답이다

프로세스(process) 컴퓨터의 메모리에 올라와 실행되고 있는 프로그램, task와 같은 의미로 쓰입니다. 하나의 스레드로 이루어진 싱글스레드 프로세스, 여러개의 스레드로 이루어진 멀티스레드 프로세스로 나뉩니다. 스레드(thread) 프로세스 내 작업의 흐름을 지칭합니다. 프로세스와 스레드의 차이 1.프로세스는 코드, 데이터, 스택, 힙 메모리 영역을 기반으로 작업하는 반면 스레드는 프로세스 내의 스택 메모리를 제외한 다른 메모리 영역을 프로세스 내의 다른 스레드들과 공유하기 때문에 메모리적 이점이 있습니다. 2.프로세스는 다른 프로세스와 격리되어있기 때문에 서로 통신을 하기 위해서는 IPC를 사용해야 하지만 스레드는 다른 스레드와 서로 격리되어있지 않으므로 그냥 통신할 수 있으므로 프로세스보다 더 빠..

https://school.programmers.co.kr/learn/courses/30/lessons/12909 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내가 푼 풀이 import java.util.*; class Solution { boolean solution(String s) { boolean answer = true; char[] charArray = s.toCharArray(); Stack stack = new Stack(); for (int i = 0; i < charArray.length; i++) { // 열린괄호 if (charAr..

5. 쇠막대기 예시 입력 1 ()(((()())(())()))(()) 예시 출력 1 17 예시 입력 2 (((()(()()))(())()))(()()) 예시 출력 2 24 문제를 이해하는 것이 중요했다. 개인적으로 이렇게 길고 그림이 나오면 읽는데 집중이 안되는데, 이것도 연습이 필요하겠지 코드상으로는 간단한데, 어떻게 풀지 생각해낼 수 있느냐가 중요하다 스택을 생성하고 여는 괄호를 만나면 무조건 push 해야합니다. 그리고 닫는 괄호를 만나면 1) 레이저의 쌍으로 닫는 괄호 2) 막대기의 끝을 알리는 괄호 2가지중에 어떤거인지 판단해야합니다. 어떻게 판단하냐면, 바로 앞에꺼가 여는 괄호라면 레이저입니다. 그때 막대기를 자르는 겁니다. 그게 아니라면 그냥 막대기입니다. 다시 말해서,닫는 괄호를 만났을때 ..

4. 후위식 연산(postfix) 예시 입력 1 352+*9- 예시 출력 1 12 후의식이란 숫자가 앞에있고 연산자만 뒤에 빠지는 것 입니다. 중의식 : 5+3, 5-3 후의식 : 53+, 53- 후의식으로 할때 빼기를 당하는 숫자는 왼쪽에 있는 숫자입니다. 숫자면 stack에 푸시하고 연산자를 만나면 꺼냅니다. 먼저 뺀게 오른쪽, 나중에 뺀게 왼쪽, 왼쪽에서 오른쪽을 빼야 합니다. 그래서 후의식을 다 연산하고 나면 스택에 숫자 딱 하나 남아있습니다. 강의 풀이 (Time: 155ms Memory: 27MB) import java.util.Scanner; import java.util.Stack; public class Main { public int solution(String str) { int an..