반응형
스프링이란? 엔터프라이즈 어플리케이션 개발에 사용되는 어플리케이션 프레임워크 어플리케이션 기본 틀 - 스프링 컨테이너 스프링은 스프링 컨테이너라고 불리는 스프링 런타임 엔진을 제공 설정 정보를 참고해서 구성하는 오브젝트를 생성하고 관리함 독립적으로 사용 가능하지만 보통 서비스나 서블릿으로 등록하여 사용함 공통 프로그래밍 모델 - IOC/DI, 서비스 추상화, AOP 프레임워크 : 구성 오브젝트가 생성되고 동작하는 방식에 대한 틀을 제공해줄 뿐 아니라, 어플리케이션 코드가 어떻게 작성돼야 하는지 기준을 제시해줌, 스프링은 크게 3가지 핵심 프로그래밍 모델(틀)을 제공함 IoC 오브젝트의 생명주기와 의존 관계에 대한 프로그래밍 모델 스프링이 제공하는 모든 기술과 API, 심지어 컨테이너도 IoC/DI방식으로..
문제링크 🚩 https://www.acmicpc.net/problem/18870 18870번: 좌표 압축 수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표 Xj의 개수와 같아야 한다. X1, X2, ..., XN에 www.acmicpc.net 📕 문제 접근 📕 1. 해당 문제는 쉽게 크기에 따른 랭킹?(순위)를 지정해주는 프로그램을 작성하는거다 - hashmap을 생성하여 ranking을 지정해줄 맵을 생성한다. - 실제 배열 -> 최종적으로 비교할 배열 , 정렬배열 -> 정렬해서 숫자의 크기를 나열할 배열을 만든다 - 정렬배열을 정렬하여 크기를 비교한다 - 중복되지 ..
문제링크 🚩 https://www.acmicpc.net/problem/1305 1305번: 광고 세준이는 길 한가운데에서 전광판을 쳐다보고 있었다. 전광판에는 광고가 흘러나오고 있었다. 한참을 전광판을 쳐다본 세준이는 이 광고가 의미하는 것이 무엇인지 궁금해지기 시작했다. 전광 www.acmicpc.net 📕 문제 접근 📕 - 해당 문제도 KMP 알고리즘을 사용한다(?). - 개인적인 생각으로는 KMP를 위한 table만 설계하면 끝난다고 생각하여 반쪽짜리 KMP 느낌이 든다. 포인트 1) 광고 문자열은 무한히 반복한다. 2) 무한히 반복하는 문자열 중 일부분만 확인하다. 3) 그광고가 될 수 있는 문자열(무한히 반복하는 문자열)이 가능한 경우 중 가장 짧은 문자열의 길이를 구한다. 문자열에서 접두사..
문제링크 🚩 https://www.acmicpc.net/problem/1786 1786번: 찾기 첫째 줄에, T 중간에 P가 몇 번 나타나는지를 나타내는 음이 아닌 정수를 출력한다. 둘째 줄에는 P가 나타나는 위치를 차례대로 공백으로 구분해 출력한다. 예컨대, T의 i~i+m-1번 문자와 P의 1~m www.acmicpc.net 📕 문제 접근 📕 - 가장 이상적인 KMP문제인 것 같다 - 접미사와 접두사가 같은 영역을 찾기 위한 table을 만들고 - 이를 KMP 알고리즘에 대입하여 해결하면 되는 문제다 - KMP 알고리즘은 해당 포스팅에 자세하게 정리해뒀으니 참고 바란다. https://security-gom.tistory.com/36 KMP -JAVA KMP Algorithm : 문자열 검색 알고..
양방향 연결 리스트(Doubly Linked List)는 각 노드가 두 개의 포인터를 가지고 있는 연결 리스트의 한 종류입니다. 각 노드는 데이터와 두 개의 포인터(다음 노드를 가리키는 next 포인터와 이전 노드를 가리키는 prev 포인터)로 구성되어 있습니다. 이러한 구조로 인해 양방향 연결 리스트는 단방향 연결 리스트와 달리 노드의 이전 노드를 쉽게 접근할 수 있습니다. 양방향 연결 리스트의 특징: 노드 구성: 각 노드는 데이터 필드와 두 개의 포인터(다음 노드를 가리키는 next 포인터와 이전 노드를 가리키는 prev 포인터)로 이루어져 있습니다. 양방향 이동: 단방향 연결 리스트와 달리, 양방향 연결 리스트는 노드의 이전 노드를 가리키는 prev 포인터를 통해 역방향으로 이동할 수 있습니다. 이..
문제링크 🚩 https://school.programmers.co.kr/learn/courses/30/lessons/77886 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📕 문제 접근 📕 110이 생기면 최대한 앞으로 뽑아내는 로직을 생각했다. 원래 문자에 110이 존재하지 않는다면 원본 그대로 저장하고 존재한다면 마지막 0뒤에 110을 찾은 수 만큼 넣는 로직을 생각하였다. 💻 Code 💻 **import java.util.Stack; class Solution { public String\[\] solution(String\[\] s) { St..