CS/알고리즘2024. 1. 23. 16:46[PS] 백준 2504 : 괄호의 값(JAVA)

문제 https://www.acmicpc.net/problem/2504 2504번: 괄호의 값 4개의 기호 ‘(’, ‘)’, ‘[’, ‘]’를 이용해서 만들어지는 괄호열 중에서 올바른 괄호열이란 다음과 같이 정의된다. 한 쌍의 괄호로만 이루어진 ‘()’와 ‘[]’는 올바른 괄호열이다. 만일 X www.acmicpc.net 풀이 자료구조 스택을 활용하여 풀이 접근법 temp라는 임시 변수를 활용. 여는 괄호의 경우 Stack.Push() temp *= 2 혹은 temp *=3 → 여는 부분에서 곱하거나 더할 값을 temp변수에 누적 닫는 괄호의 경우 Stack.isEmpty() 체크 각각의 괄호에 따라 결과값에 temp값 누적 및 temp값 감소 temp /= 3 or temp /= 2 소스코드 impor..

[운영체제] Synchronization Tools(공룡책 스터디 정리)
CS/운영체제2024. 1. 16. 21:21[운영체제] Synchronization Tools(공룡책 스터디 정리)

본 포스팅은 인프런 공룡책 강의를 기반으로 한 스터디 개인 정리를 위한 포스팅입니다. 잘못된 부분이 있다면 언제든 지적해주시면 감사하겠습니다! 1. 프로세스 동기화 동시다발적으로 실행되는 프로세스와 쓰레드들은 서로 협력하면서 영향을 주고받게 되는데 이 과정에서 자원의 일관성을 보장해야 함. 프로세스 동기화란 ? 실행순서 제어 : 프로세스를 올바른 순서대로 실행하기 글 쓰는 프로세스가 먼저 실행된 후 읽는 프로세스가 실행되어야 정상적으로 데이터가 넘어가기 때문. 상호 배제 : 동시에 접근해서는 안 되는 자원에 하나의 프로세스만 접근하게 하기 Bank account problem 프린터처럼 한 번에 하나의 프로세스만 접근해야 하는 자원 Producer & Consumer Problem 공유 자원과 임계 구역..

[Git] Github-Flow [깃 브랜치 전략]
DevOps./Git2024. 1. 16. 20:53[Git] Github-Flow [깃 브랜치 전략]

Github Flow Github Flow는 Git Flow가 Github에서는 사용하기 복잡하다고 하여 나온 전략 여러 전략 중 가장 간단한 전략 위 커밋 그래프처럼 단순한 형태를 띄기 때문에 사용법도 단순함. 하나의 기능 구현 Feature 브랜치가 완료될 때 마다 Pull Request를 진행하기 때문에 수시로 배포가 발생. → CI / CD 환경을 구축하여 자동화가 되어있는 환경에서 사용하기 적합함. 장점 - 위 이미지처럼 Git Flow에 비해 간단하고 직관적인 구조를 가지고 있음. - 단순한 구조 및 빠른 배포주기로 인해 소규모 및 단기간 프로젝트에서 사용하기 좋음. 단점 - Git Flow에 비해 브랜치를 세분화하지 않기 때문에 브랜치 네이밍 및 커밋 메시지에 신경 쓰지 않으면 전체적인 개발..

DevOps./Git2024. 1. 15. 22:01[Git] 원격 레포지토리 변경사항 로컬 브랜치로 가져오기

개별 브랜치 최신화를 해야하는 상황 작업을 할 때 브랜치의 수명은 되도록 짧게 가져가는게 좋지만, 개별 브랜치에서 기능을 완료하는데 해야 할 작업들이 많아서 오래 걸리는 경우들이 있음. 그러다 보면 master에 추가된 기능들이 필요한 경우가 종종 생기게 됨. 이러한 상황 속 문제없이 내 로컬 브랜치에 원격 master의 변동사항을 가져오는 방법에 대해 알아봄. git pull origin master 개별 브랜치에서 해당 명령어를 통해 불러올 경우 아마 가져와지지 않을 경우가 높음. 이유는 Git에서 제공하는 안전성 검사 때문에 로컬 브랜치의 작업내용이 손실될 수 있기 때문. ( git pull의 경우 변동 사항이 있는지 확인함과 동시에 최신 데이터를 복사하여 로컬 Git으로 가져오기 때문에 작업내용 ..

image