분류 전체보기
-
선형자료구조 - 스택알고리즘/이론 2024. 4. 12. 17:48
📌 스택 1. 후입 선출(Last In First Out; LIFO) 자료구조 - 마지막에 들어온 데이터가 먼저 나가는 구조 2. 데이터가 입력된 순서의 역순으로 처리되어야 할 때 사용 - ex) 함수 콜 스택, 수식 계산, 인터럽트 처리 등 - 함수 콜 스택 : 함수의 내부 함수를 실행하는 전체 로직을 저장하는 공간(fun2 -> fun1 -> main 함수) - 인터럽트 처리 : 로직을 실행하다가 중간에 다른 처리가 필요할 때 사용 (기존 로직을 스택에 저장한 후 중간 처리를 실행한 뒤에 다시 로직 실행) 스택 기본 구조 후입 선출 구조 기본적으로 데이터 추가, 꺼내기, 스택 공간 확인 동작으로 이러우짐 스택 공간 안에 스택 하단(Bottom)과 스택 상단(Top)이 있고, 데이터 삽입(Push)과 ..
-
선형자료구조 - 연결 리스트알고리즘/이론 2024. 4. 4. 11:29
📌 연결 리스트 1. 데이터를 링크로 연결해서 관리하는 자료구조 2. 자료의 순서는 정해져 있지만, 메모리상 연속성이 보장되지 않음 장점 데이터 공간을 미리 할당할 필요 없이 빈 공간에 할당해도 됨 리스트의 길이가 가변적이기 때문에 데이터 추가 / 삭제 용이 (메모리 관리 측면) 단점 연결 구조를 위한 별도 데이터 공간이 필요 배열은 인덱스를 통해 바로 데이터에 접근이 가능했으나 연결리스트는 다음 연결해야하는 데이터를 링크로 연결해서 그 링크에 대한 공간이 필요 연결 정보를 찾는 시간이 필요 (메모리 상 연속된 위치가 아니라면, 접근 속도가 상대적으로 느림) 데이터 추가 및 삭제 시 앞뒤 데이터의 연결을 재구성하는 작업 필요 노드 데이터 저장 단위, 값과 포인트로 구성 포인터 : 다음 노드나 이전 노드의..
-
선형자료구조 - 배열알고리즘/이론 2024. 4. 1. 17:36
📌 배열 1. 많은 수의 데이터를 다룰 때 사용하는 자료구조 2. 각 데이터를 인덱스와 1:1 대응하도록 구성 3. 데이터가 메모리 상에 연속적으로 저장 장점 인덱스를 이용하여 데이터에 빠르게 접근 가능 단점 데이터의 추가 / 삭제가 번거로운 편 미리 최대 길이를 정해서 생성해야함 가변 길이 배열은 배열의 크기를 변경할 때마다 새로운 배열을 생성 데이터 삭제 시 인덱스를 유지하기 위해 빈 공간을 유지해야함 1차원 배열 int[] arr = {1, 2, 3, 4, 5}; for(int item : arr) { System.out.println("item = " + item); } // item = 1 // item = 2 // item = 3 // item = 4 // item = 5 arr[1] = 10..
-
[DB Connection] DBMS: PostgreSQL (no ver.)Case sensitivity: plain=mixed, delimited=exactThe connection attempt failed. 오류트러블 슈팅(Trouble Shooting) 2024. 3. 12. 11:01
DBMS: PostgreSQL 오류 발생. 예로 들어, 34번 IP 주소 서버의 DB에 데이터를 원격 네트워크로 다른 IP 주소로 접속해서 확인하지 않고, 인텔리제이에서 DB 연결해서 가져오려고 시도했지만, DB 연결이 계속 실패했다. 해당 DB host와 password는 올바른 상황이다. ping -a 'ip주소' 로 ping 테스트를 날려보았는데, 100% 손실이 발생했다. 이는 대상 IP 주소로의 네트워크 연결이 완전히 차단되었거나 도달할 수 없음을 의미한다. 해결 조치 1. 인바이드 규칙으로 새 규칙을 생성해서 postgres 이름으로 기본 포트번호인 '5432' 접속을 연결 허용 2. PostgreSQL 설치 폴더 - data - postgresql.conf 를 열어서 listen_addres..
-
스프링 코딩 공작소 - 길벗 출판사도서 2023. 3. 27. 02:21
현업에서 스프링과 부트스트랩으로 UI 초기구성부터 DB 구조를 새롭게 구성하고 있는데, 커머스 계열이 아니다보니 쇼핑몰 관련된 개인 프로젝트를 하고 싶은 마음을 가지고 있었다. MVC 패턴과 더불어 스프링 강의를 병행하고 있지만, 전체적인 구조와 원리를 파악하는 것은 역시 정적인 도서 매체를 통해 지속적으로 눈으로 보면서 익히는게 내 학습 스타일에 맞는 것 같다. 이 책의 장점은 그림으로 MVC 구조를 한눈에 파악하기 수월했고, 개발 초기 세팅부터 차근차근 직접 코딩하면서 익히고, 최종적으로 쇼핑몰 프로젝트를 내 손으로 구축할 수 있다는 것이다. 현재 회사에서는 주로 백오피스 작업과 부트스트랩으로 초기 UI 기획 및 구현을 하고 있는데, 그야말로 맨 땅에 헤딩하면서 구현해내기에만 급급했고, 아직 스프링 ..
-
jar 파일 실행 원리백엔드 2023. 2. 3. 11:05
java -jar로 커맨드 실행 MANIFEST.MF(개발영역단과 스프링부트 연결해주는 영역)의 main class인 jarLauncher가 실행 jarLauncher가 MANIFEST.MF start class인 JarAnalysisApplication 호출 ⇒ 이것의 핵심은 우리가 개발한 main 메소드를 스프링 프레임워크가 대신 호출해준다는 것 여기서 더 알 수 있는 것은 프레임워크와 라이브러리의 차이점 프레임워크 = 우리가 짠 코드를 호출, 흐름 통제권을 가짐 라이브러리 = 우리가 호출 jar ⇒ 스프링부트에 개발한 소스코드를 실행하는 모든 것을 가지고 있음 스프링 부트 jar 구성 요소 (BOOT-INF, org/springframework/boot/loader, META-INF) BOOT-IN..
-
객체 탐지 모델(딥러닝, R-CNN, YOLO)GIS(지리정보시스템) 2023. 1. 15. 03:34
📌 객체 탐지 모델(딥러닝, R-CNN, YOLO) 🔸 2023-01-13 [객체 탐지 모델] 2013년 최초의 딥러닝 기반 R-CNN 모델 등장 이후 Fast R-CNN, Faster R-CNN 모델 등의 좋은 성과 2016년, YOLO와 SSD 등장으로 새로운 계열 딥러닝 기반 객체 탐지 모델 등장 2017년, RetinaNet 등장하면서 더 높은 성능 퍼포먼스 Mask-R-CNN 모델도 등장 Segmentation Semantic Segmentation : 동일한 객체들끼리 한 번 마스킹 수행, FCN이 가장 대표적 기법 Instance Segmentation : 동일한 객체들이여도 각 개별 객체별로 마스킹 수행 FCN : Mask R-CNN 모델 활용, FCN 구조 R-CNN은 전체 이미지를 유지..