2023/03 12

TIL_230323-0324

더보기 3월 23일 (목) 알고리즘 : 그리디 문제 풀이, 알고리즘 문제 풀이 리뷰 CS 스터디 : 자료구조 공부 프로젝트 브랜치 정리 3월 24일 (금) 알고리즘 : 구현 문제 풀이, 알고리즘 문제 풀이 리뷰 디자인 패턴 랜덤 손코딩 복습 📝배운 내용 간단 요약 1️⃣ 비선형 자료 구조 : 그래프 정점과 간선으로 이루어진 집합 정점 (Vertex, Node, V or U) 어떤 위치, 어떠한 지점 인접 정점 - 간선에 의해 직접 연결된 정점 간선 (Edge) 정점과 정점을 잇는 선 무방향 vs 방향 간선 차수(degree) - 무방향 그래프에서 하나의 정점에서 인접한 정점 수 진출/진입 차수 - 어떤 정점에서 나가는/들어오는 간선의 수 가중치(weight) - 간선 사이의 이동 값 그래프 저장 방법 인..

TIL_230321-0322

더보기 3월 21일 (화) CS 스터디 : 자료구조 공부 프로젝트 PR 리뷰 및 안드로이드 코드 테스트, 버그 수정 3월 22일 (수) 알고리즘 : 구현 문제 풀이 CS스터디 : 운영체제, 자료구조 간략 복습, DB 용어 공부 직무 면접 대비 질문 3개 준비 📝배운 내용 간단 요약 1️⃣ 선형 자료 구조 : 스택과 큐 삽입, 삭제 O(1), 탐색 O(N) Stack (스택) LIFO (Last-In-First-Out) java.util.stack 대표 메서드 : push(), pop(), size(), empty() DFS Queue (큐) FIFO (First-In-First-Out) java.util.queue 대표 메서드 : offer(), poll(), remove(), peek() BFS 2️⃣..

TIL_230320

오늘 한 일 [DONE] 오늘도 아침 운동을 나갔다! 아직 1주일밖에 안 되긴 했지만 벌써 체력이 좋아지는 기분이고 하루를 밝게 시작하는 중. 같이 하는 사람이 있으니 약속 시간 지키려고 무조건 나가게 되더라. 덕분에 좀 부지런해진 기분. 채용 공고 확인, 자소서 항목 정리, 초안 작성 CS 스터디 네트워크 복습 및 자료 구조 공부 알고리즘 구현 문제 풀이 1️⃣ 선형 자료 구조 : 연결 리스트 (Linked List) 선형 자료 구조 : 요소가 일렬로 나열되어 있는 자료 구조 연결 리스트 : 데이터, 다음 노드를 가리키는 주소를 감싼 노드들을 연결한 자료 구조. 주소 공간이 연속될 필요 X, 미리 데이터 공간을 할당하지 않아도 됨. 순차적 접근만 가능 삽입, 삭제 O(1) & 탐색 O(n) 2️⃣ 선형..

TIL_230316-0317

더보기 3월 16일 (목) 완전탐색 알고리즘 풀이 완료, 구현 알고리즘 풀이 시도 CS 스터디, 자료구조 공부 직무 면접 대비 연습 테스트 계정 로그인 개발 페어 프로그래밍 3월 17일 (금) 어제 틀렸던 구현 알고리즘을 오늘 풀고, 피드백 테스트 계정 로그인 개발 페어 프로그래밍. UI로직 및 UseCase 동작 확인 완료. 프로젝트 회의록 및 이슈 정리 📝 배운 내용 간단 요약 1️⃣ 복잡도 시간 복잡도 : 문제를 해결하는 데에 걸리는 시간. 입력에 대한 함수 관계를 나타내며, 점근 표기법을 사용. 그중에서도 빅오 표기법이 일반적. 공간 복잡도 : 프로그래밍을 실행시켰을 때 필요로 하는 자원 공간의 양. 2️⃣ Kotlin : Scope functions (범위 지정 함수) 직역하면 scope fun..

TIL_230314-0315

더보기 3월 14일 (화) 구현 알고리즘 문제 풀이, 피드백, 코드 리뷰 프로젝트 게시물 상세 UI 변경 및 PR 3월 15일 (수) 문자열 알고리즘 문제 풀이, 회고 및 개선 프로젝트 중요 문서 삭제 및 백업, 브랜치 정리 직무 면접 대비 면접 질문 3개 답변 준비 📝 배운 내용 간단 요약 1️⃣ AP (Application Processor) Mobile AP (CPU + OS 등) SoC(System-on-Chip) : AP 칩 내부에 CPU, OS 등 장치 및 인터페이스 컨트롤 기능을 모두 포함. AP칩 내부 CPU의 코어가 많을수록 동시에 실행이 가능해 성능이 좋음. 2️⃣ DIP (Density-Independent Pixel) = DP 밀도 독립적인 픽셀 밀도 독립적 = 화면을 이루는 픽셀의..

TIL_230313

오늘 한 일 [DONE] BFS 알고리즘 풀기 CS 네트워크 복습 질문 CS 운영체제 공부 1️⃣ CPU 스케줄링 알고리즘 CPU 스케줄러가 어떤 프로세스에게 CPU 소유권 줄지 결정하는 알고리즘. CPU 스케줄링의 목표 1. CPU utilization 최대화 2. Throughput, 특정 시간에 실행되는 일의 수를 많게 3. Ready Q에 있는 프로세스는 적게 4. 응답 시간(Response Time)은 짧게 CPU가 작업하는 프로세스를 강제로 뺏느냐 뺏지 않느냐에 따라 선점, 비선점으로 나뉜다. 비선점(non-preemptive) FCFS(First Come, First Served) : 가장 먼저 온 것을 가장 먼저 CPU 제공. SJF(Shortest Job First) : 가장 실행시간이 ..

TIL_230309

오늘 한 일 [DONE] CS 스터디에서 운영체제를 공부했다. 직무 면접 스터디를 진행했다. DFS/BFS 알고리즘 문제를 풀었다. 1️⃣ 공유 자원 (Shared Resource) 공유 자원 : 각 프로세스, 스레드가 함께 접근할 수 있는 자원 (모니터, 프린터, 메모리, 파일 등) 경쟁 상태(Race Condition) : 공유 자원에 2개 이상의 프로세스나 스레드가 읽거나 쓰는 상태 2️⃣ 임계 영역 (Critical Section) 임계 영역 : 둘 이상의 프로세스, 스레드가 공유 자원에 접근할 때 순서 등의 이유로 결과가 달라지는 코드 영역. 해결 방법 : 뮤텍스, 세마포어, 모니터 해결 방법 조건 1. 상호 배제 : 한 프로세스가 임계 영역에 들어갔을 때 다른 프로세스는 접근 X 2. 한정 대..

TIL_230308

오늘 한 일 [DONE] CS 스터디에서 운영체제 공부한 내용 복습하고 객체지향 프로그래밍을 공부했다. DFS/BFS 알고리즘 문제를 풀었다. DFS, BFS 모두 가능한 문제라서 둘 다 구현해 보았다. 앞으로도 가능하면 두 개 다 구현해 봐야겠다. 직무 면접 답변 준비를 위해서 예전 CS 자료들을 정리했다. 📝오늘 배운 내용 간단 요약 1️⃣ 객체지향 프로그래밍 어떤 사물을 상태와 행위를 가진 객체로 추상화하여, 객체들 간 관계, 상호작용을 프로그래밍하는 방법. 특징 1. 상속 (Inheritance) : 부모 클래스의 내용을 하위 클래스가 그대로 사용 가능하며 확장 가능. 관계 부여 가능. 2. 캡슐화 (Encapsulation) : 상태와 행위를 객체로 묶어 정보를 은닉. 3. 다형성 (Polymo..

TIL_230302-0307

더보기 3월 2일 (목) CS 스터디 운영체제 공부 - 프로세스 상태와 프로세스 메모리 구조 3월 3일 (금) 지금까지 배운 디자인 패턴 총 복습, 헤드퍼스트 디자인 패턴 독서로 보충. 3월 5일 (일) 채용 공고 확인, 자소서 초안, 테크트리 정리 3월 6일 (월) CS 스터디 운영체제 공부 - PCB, 멀티 프로세싱, 스레드와 멀티스레딩 Android 프로젝트 중복 클릭 방지 로직 추가 3월 7일 (화) 프로젝트 코드 리뷰 및 PR 완료 DFS/BFS 알고리즘 문제 해결 및 피드백 1️⃣ 프로세스 상태 (Process State) New : 프로세스 생성 (fork or exec) Ready : 메모리에서 대기 상태. 당장 실행 가능한 준비 상태 Running : 메모리를 할당받은 상태에서 CPU 소..