2024/09 20

[프로그래머스] 둘만의 암호 JAVA

문제[프로그래머스] 둘만의 암호 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 두 문자열 s와 skip, 그리고 자연수 index가 주어질 때, 다음 규칙에 따라 문자열을 만들려 합니다. 암호의 규칙은 다음과 같습니다.문자열 s의 각 알파벳을 index만큼 뒤의 알파벳으로 바꿔줍니다.index만큼의 뒤의 알파벳이 z를 넘어갈 경우 다시 a로 돌아갑니다.skip에 있는 알파벳은 제외하고 건너뜁니다.두 문자열 s와 skip, 그리고 자연수 index가 매개변수로 주어질 때 위 규칙대로 s를 변환한 결과를 return하도록 solution 함수를 완성해주세요.  ..

[프로그래머스] N개의 최소공배수 JAVA

문제[프로그래머스] N개의 최소공배수 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   두 수의 최소공배수(Least Common Multiple)란 입력된 두 수의 배수 중 공통이 되는 가장 작은 숫자를 의미합니다. 예를 들어 2와 7의 최소공배수는 14가 됩니다. 정의를 확장해서, n개의 수의 최소공배수는 n 개의 수들의 배수 중 공통이 되는 가장 작은 숫자가 됩니다. n개의 숫자를 담은 배열 arr이 입력되었을 때 이 수들의 최소공배수를 반환하는 함수, solution을 완성해 주세요. 제한 사항arr은 길이 1이상, 15이하인 배열입니다.arr의 원소..

20240909_TIL

1. 내일배움캠프 Sping 오늘은 스프링 심화주차에 들어갔습니다. 오늘은 OAuth와 카카오로 로그인하기, 단위 테스트란 무엇인지, Mockito란 무엇인지, 통합 테스트, AOP에 관하여 공부하였습니다.  2. 스프링 테스트 프로젝트이번주부터 새롭게 개인 프로젝트를 시작하였습니다. 이번에는 이번주에 공부하는 AOP와 테스트를 공부하기 위한 프로제트입니다. https://github.com/SuHyun-git/spring-advanced GitHub - SuHyun-git/spring-advancedContribute to SuHyun-git/spring-advanced development by creating an account on GitHub.github.com

TIL 2024.09.11

공유 자원과 임계 영역

공유 자원과 임계 영역우선 공유 자원과 임계 영역에 관해서 자세하게 알기 위해서는 스레드에 대해서 알아야합니다.스레드: 프로세스의 실행 가능한 가장 작은 단위로 프로세스는 멀티스레딩이라는 기술로 여러개의 스레드를 가집니다.이때 코드, 데이터, 스택, 힙을 각각 생성하는 프로세스와는 달리 스레드는 코드, 데이터, 힙을 스레드끼리 서로 공유해서 사용합니다.공유 자원공유 자원(shared resource): 시스템 안에서 각 프로세스, 스레드가 함께 접근할 수 있는 자원이나 변수등을 의미합니다. 공유 자원을 두 개 이상의 프로세스가 동시에 읽거나 쓰는 상황을 경쟁 상태라고 합니다.위 사진과 같이 프로세스 A와 프로세스 A가 동시에 접근하여 타이밍이 서로 꼬이는 경우 300이 정상적인 결과값이지만 200이 출력..

20240906_TIL

1. 내일배움캠프 Sping 오늘은 팀 프로젝트를 하였습니다. 팀 프로젝트가 종료되었고, 오늘 발표를 하였습니다.  2. 김영한의 스프링 기본편세션 10. 빈 스코프에 관하여 공부하였습니다. 싱글톤 빈과 함께 사용하면 어떤 오류가 나오는지와, Provider로 문제를 해결하는 방법도 공부하였습니다.  3. 코딩테스트[프로그래머스] 예상 대진표 JAVA  [프로그래머스] 저자 별 카테고리 별 매출액 집계하기 MySQL 4. CS 공부프로세스와 스레드에 관하여 공부하였습니다. [운영체제] 프로세스와 스레드 [운영체제] 프로세스와 스레드프로세스와 스레드프로세스: 컴퓨터에서 실행되고 있느 프로그램을 말하여 CPU스케줄링의 대상이 되는 작업(tesk)아라는 용어와 거의 같은 의미스레드: 프로세스 내 작업의 흐름프..

TIL 2024.09.08

[프로그래머스] 저자 별 카테고리 별 매출액 집계하기 MySQL

문제[프로그래머스] 저자 별 카테고리 별 매출액 집계하기 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 2022년 1월의 도서 판매 데이터를 기준으로 저자 별, 카테고리 별 매출액(TOTAL_SALES = 판매량 * 판매가) 을 구하여, 저자 ID(AUTHOR_ID), 저자명(AUTHOR_NAME), 카테고리(CATEGORY), 매출액(SALES) 리스트를 출력하는 SQL문을 작성해주세요. 결과는 저자 ID를 오름차순으로, 저자 ID가 같다면 카테고리를 내림차순 정렬해주세요.   정답SELECT B.AUTHOR_ID, AUTHOR_NAME, CATEGORY,..

[프로그래머스] 예상 대진표 JAVA

문제[프로그래머스] 예상 대진표 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr △△ 게임대회가 개최되었습니다. 이 대회는 N명이 참가하고, 토너먼트 형식으로 진행됩니다. N명의 참가자는 각각 1부터 N번을 차례대로 배정받습니다. 그리고, 1번↔2번, 3번↔4번, ... , N-1번↔N번의 참가자끼리 게임을 진행합니다. 각 게임에서 이긴 사람은 다음 라운드에 진출할 수 있습니다. 이때, 다음 라운드에 진출할 참가자의 번호는 다시 1번부터 N/2번을 차례대로 배정받습니다. 만약 1번↔2번 끼리 겨루는 게임에서 2번이 승리했다면 다음 라운드에서 1번을 부여받고, ..

[운영체제] 프로세스와 스레드

프로세스와 스레드프로세스: 컴퓨터에서 실행되고 있느 프로그램을 말하여 CPU스케줄링의 대상이 되는 작업(tesk)아라는 용어와 거의 같은 의미스레드: 프로세스 내 작업의 흐름프로그램이 실행하는 과정: 프로그램이 메모리에 올라가면 프로세스가 되는 인스턴스화가 일어나고, 이후 운영체제의 CPU 스케줄러에 따라 CPU가 프로세스를 실행합니다.프로세스와 컴파일 과정프로세스는 프로그램이 메모리에 올라가 인스턴스화 된 것을 말합니다. 여기서 프로그램은 아직 실행되지 않은 코드들의 모음을 말합니다. 예를 들어 프로그램은 구글 크롬 프로그램(chrome.exe)과 같은 실행 파일이며, 이를 두 번 클릭하면 구글 크롬 프로세스로 변환되는 것입니다. 전처리소스 코드의 주석을 제거하고 #include 등 헤더 파일을 병합하..

[네트워크] IP 주소

IP주소ARPARP(Address Resolution Protocol): IP주소로부터 MAC 주소를 구하는 IP와 MAC주소의 다리 역할을 하는 프로토콜입니다.홉바이홉 통신IP주소를 통해 통신하는 과정을 홉바이홉 통신이라고 합니다. 홉이란 건너뛰는 모습을 의미합니다.(통신망에서 각 패킷이 여러 개의 라우터를 건너가는 모습을 비유적으로 표현한 것입니다.)통신 장치에 있는 라우팅테이블의 IP를 통해 시작 주소부터 시작하여 다음 IP로 계속해서 이동하는 라우팅 과정을 거쳐 패킷이 최종 목적지까지 도달하는 통신을 말합니다.라우팅 테이블이란송신지에서 수신지까지 도달하기 위해 사용되며 라우터에 들어가 있는 목적지 정보들과 그 목적지로 가기 위한 바업ㅂ이 들어 있는 리스트게이트웨이서로 다른 통신망, 프로토콜을 사용..