본문 바로가기

분류 전체보기176

자료구조 - 한방향 연결리스트, 양방향 연결리스트 1. 연결리스트1) 개념자료의 논리적인 순서와 메모리 상의 물리적인 순서가 일치하지 않고, 개별적으로 위치하고 있는 원소의 주소를 연결하나의 전체적인 자료구조를 이룸.링크를 통해 원소에 접근하므로, 순차 리스트에서처럼 물리적인 순서를 맞추기 위한 작업이 필요하지 않음자료의 크기를 동적으로 조절해 메모리의 효율적인 사용 가능.(추가 삭제 빠름)2) 노드연결 리스트에서 하나의 원소에 필요한 데이터를 갖고 있는 자료단위- 구성요소데이터 필드 : 원소의 값링크 필드 : 다음 노드의 주소 ( 마지막 노드는 링크 값을 null로 가짐)- 헤드 : 리스트의 처음 노드를 가리키는 레퍼런스     2. 한방향 연결리스트1) 연결구조노드가 하나의 링크 필드에 의해 다음 노드와 연결되는 구조를 가짐헤드가 가장 앞의 노드를 .. 2024. 5. 24.
JPA vs Hibernate vs Spring JPA 지난 프로젝트를 회고하며 JPA에 대한 이해도가 부족한 상태에서 기술만 급하게 사용한 것은 아닌가 하는 반성이 있었다. 따라서 JPA에 대한 이해를 굳건히 하고자, 김영한 강사님의 JPA ORM ㅇㅇ 강의를 다시 수강했다.해당 강의를 수강하며 거듭 드는 생각은, 내가 프로젝트에서 사용했던 JPA와는 차이가 있었다는 것이다. EntityManager를 통해 entity CRUD를 진행하는 강의와는 달리, 프로젝트에서는 Repositoy 인터페이스를 구현해 활용했기 때문에 이 둘 사이의 어떤 차이가 있는가에 대해 정리하고 넘어가려 한다.따라서 이번 게시글에서는 JPA, Hibernate, Spring Data JPA에 관하여 다루고, 비교해볼 것이다.JPAJPA는 Java Persistence API의 약자.. 2024. 5. 9.
백준 12904번. A와B (Java) 1. 문제 조건 2. 아이디어 주어진 시간은 2초이다. S의 길이는 최소 1에서 최대 999, T의 길이는 최대 1000이다. S에서 T가 만들어질 수 있는 지 확인하기 위해 문자열 뒤에 A을 한 번 추가해보고, 또 문자열을 뒤집고 B를 추가하는 연산을 각각 수행해보는 완전탐색 방식은 시간초과가 난다. S의 길이가 1이고 T의 길이가 1000인 최악의 상황을 고려했을 때, 999자리만큼 문자를 늘려야한다. 위에서 설명한 방식은 한 자리씩 늘릴 때마다 2가지 경우의 수가 존재하므로 2의 999제곱이 되어 시간초과가 발생한다. 따라서 S에서 완전탐색으로 T를 만들어나가는 과정은 적용할 수 없다. 그렇다면 반대로 T에서 S를 만들어나가면 된다. S에 1번 연산을 적용하면 맨 뒤 알파벳은 A가 되고 2번 연산을.. 2024. 4. 12.
(운영체제 / 반효경) 3-2. Process (PCB, 문맥 교환, Queue, 스케줄링, 스레드(Thread)) Process Control Block (PCB) 운영체제가 각 프로세스를 관리하기 위해 프로세스마다 해당 프로세스의 정보를 구조체로 구성해 저장하는 정보이다. 이러한 PCB를 구성하는 요소를 4가지로 나누어 살펴보자. OS가 관리상 사용하는 정보 프로세스 상태, PID(Process ID), 스케줄링 정보, Priority를 담고 있다. Priority는 Queue에 먼저 온 순서대로 처리하지 않고 스케줄링 기법마다 가진 우선순위에 대한 정보를 나타낸다. CPU 수행 관련 하드웨어 값 Program Counter와 Registers가 있다. CPU에 어떤 레지스터 값을 넣어서 실행하고 있었는지를 나타낸다. 메모리 관련 code, data, stack이 메모리의 어디에 위치해있는지에 대한 정보가 있다. .. 2024. 4. 5.
(운영체제 / 반효경) 3-1. Process (Process Context, Process State) Process Context (프로세스 문맥) 프로세스란 쉽게 말해 실행 중인 프로그램을 말한다. 이러한 프로세스가 특정 시점에 어디까지 실행됐는지, 어떤 단계까지 실행을 한 상태인지를 저장하여, 새로운 프로세스를 실행시키는 데에 사용되는 정보를 바로 프로세스 문맥이라고 한다. 프로세스는 다음과 같이 세 가지로 구분하여 설명할 수 있다. CPU 수행 상태를 나타내는 하드웨어 문맥 프로세스의 주소 공간 프로세스 관련 커널 자료구조 프로세스가 실행되면 그 프로세스 만의 독자적인 주소공간으로 code, data, stack을 형성한다. 그 후 CPU를 잡아 Counter Register가 이 프로세스의 코드 중 특정 부분을 가리켜 매 순간 Instruction을 하나씩 읽어서 CPU 안으로 부른다. Regis.. 2024. 3. 27.
(컴퓨터와 네트워크 / 이석복) 멀티미디어 네트워크 (Streaming Stored 방식, DASH) 본 게시물은 이석복 교수님의 네트워크 강의를 수강하며 작성한 강의노트와 추가 공부한 내용을 바탕으로 작성하였습니다. 참고 강의 및 사이트 KOCW KOCW 한양대학교 이석복 강의 내용 및 목표 인터넷을 동작시키는 컴퓨터네트워크 프로토폴을 학습한다. 주제분야 공학 >컴퓨터ㆍ통신 >컴퓨터공학 강의학기 2015년 2학기 수강 확인증 발급 안내 수강 유튜브 같은 멀티미디어가 네트워크 상에서 어떻게 동작하는 걸까? 멀티미디어 네트워크 파트에서는 이러한 서비스의 동작 방식에 대해 다룬다. Multimedia : Audio 오디오와 같은 아날로그 신호는 어떻게 네트워크로 전달할까? 이를 디지털 데이터로 전환하는 것이 필요하다. 이러한 작업(아날로그 신호를 디지털 신호로 변환)를 Sampling이라고 한다. 연속적인 .. 2024. 3. 27.