Skip to content

Latest commit

 

History

History
152 lines (116 loc) · 7.82 KB

File metadata and controls

152 lines (116 loc) · 7.82 KB

CS-algorithm-study

팀원 소개

이름 github 아이디 담당 주차 비고
조성화(알고) hwacho9 5,10 일본대학 유학생(26졸), 전공생
안현우(알고) - 4,11
이재엽(알고) - 1,8
장형원(알고) - 2,9
허용준 - 3
문성철 - 6

1. 역할 소개

  • 👨‍🏫 발표자 (1명)
    • 주요 역할: 해당 주차의 주제를 가장 깊이 있게 학습하여 스터디원들에게 핵심 내용을 발표하고 설명합니다.
    • 이렇게 준비해주세요!
      • 스터디원들이 이해하기 쉽도록 발표 자료(PPT, Notion, 마크다운 등)를 준비합니다.
      • 레포지토리에 발표 자료를 올립니다.
      • 단순 정보 나열이 아닌, "왜 이것이 중요한가?"에 초점을 맞춰 설명합니다.
  • 🤔 토론/질문자 (6명)
    • 주요 역할: 발표 내용을 들으며 비판적인 시각으로 질문을 던지고, 자유로운 토론을 이끌어냅니다. 스터디의 깊이를 더하는 역할입니다.
    • 이렇게 준비해주세요!
      • 발표 주제를 미리 학습하고, 질문을 최소 2개 이상 준비합니다.

2. 주간 스터디 진행 순서

  1. 알고리즘 문제 풀이(알고리즘 풀이 참가자만) : 알고리즘 문제를 풀고, 코드를 공유합니다.
  2. 발표 : 2명의 발표자가 준비한 내용을 설명합니다.
  3. 심층 토론 및 Q&A : 5명의 토론자가 준비한 질문을 중심으로 모든 스터디원이 자유롭게 의견을 나눕니다.
  4. 정리 및 마무리 : 다음 주 주제와 역할 담당자를 공지하며 마무리합니다.

📚 전체 커리큘럼 (수정 할 수도 있습니다.)

날짜 발표자 주차 대주제 주차별 세부 주제
- 재엽 1주차 자료구조 시간복잡도(Big-O), 배열, 연결 리스트, 스택, 큐
- 형원 2주차 자료구조 해시 테이블(충돌 해결 방법 포함), 트리, 힙
- 성화 3주차 자료구조 그래프(DFS/BFS 기본 탐색), 각 자료구조별 시간복잡도 총정리표 및 실습
- 현우 4주차 네트워크 OSI 7계층 vs TCP/IP 4계층, TCP와 UDP, 3-way-handshake
1/11 용준 5주차 네트워크 HTTP/HTTPS, REST API, CDN·Caching·Reverse Proxy (실무 서비스 설계)
1/25 재엽 6주차 운영체제 프로세스 vs 스레드, CPU 스케줄링 알고리즘
2/1 재엽 7주차 운영체제 메모리 관리(페이징·세그먼테이션), 스레드 동기화(세마포어·뮤텍스), 교착상태(Deadlock) 발생 조건 및 해결 방법
2/8 형원 8주차 데이터베이스 관계형 데이터베이스, 정규화, 트랜잭션(ACID), 격리 수준
2/15 성화 9주차 데이터베이스 인덱스 원리(B-Tree 등), SQL 최적화, 실행 계획 분석
2/22 현우 10주차 디자인 패턴 디자인 패턴의 개념과 필요성, 싱글톤·팩토리·스트래티지 패턴
3/1 용준 11주차 디자인 패턴 옵저버·프록시 패턴, MVC·MVVM 등 아키텍처 패턴
3/8 - 12주차 종합 정리 전 주차 핵심 복습 및 CS 기술 면접 대비, 실습 과제 또는 미니 프로젝트 발표

참고 자료

https://github.com/VSFe/Tech-Interview

분야 교재/참고 사이트
자료구조 『이것이 코딩테스트다』,
네트워크
운영체제 『운영체제 공룡책(Operating System Concepts)』
DB
디자인패턴

알고리즘

🔹 第1週: 基本概念 & 配列探索

  • 📌 理論学習: Arrays & Hashing (ハッシュ、配列探索の手法)

    スクリーンショット 2025-03-05 17.06.26.png

📌 問題演習:

  1. https://leetcode.com/problems/contains-duplicate/description/
  2. https://leetcode.com/problems/valid-anagram/description/
  3. https://leetcode.com/problems/two-sum/description/
  4. https://leetcode.com/problems/group-anagrams/description/
  5. https://leetcode.com/problems/top-k-frequent-elements/description/
  6. https://leetcode.com/problems/encode-and-decode-tinyurl/description/
  7. https://leetcode.com/problems/product-of-array-except-self/description/
  8. https://leetcode.com/problems/valid-sudoku/description/
  9. https://leetcode.com/problems/longest-consecutive-sequence/description/
  • 追加問題: Leetcode75

🔹 第2週: ツーポインター & スタック

📌 理論学習: Two Pointers & Stack (Slow/Fast, LIFO)

📌 問題演習:


🔹 第3週: 二分探索 & スライディングウィンドウ

📌 理論学習: Binary Search (Lower/Upper Bound)、Sliding Window

📌 問題演習:


🔗 Google Meet


💡 기타 규칙 및 약속

  • 소통 채널: 슬랙 (공지 및 빠른 소통), Github (스터디 자료 아카이빙)
  • 스터디 시간: 매주 일요일 10:00 (Asia/Tokyo)
  • 기본 규칙: 정해진 역할은 책임감을 가지고 수행합니다. 불참 시 최소 하루 전까지는 미리 공유하기!
  • 발표 자료 올리기: 발표 자료를 Github에 올립니다.
  • 질문 준비: 발표 주제를 미리 학습하고, 질문을 최소 2개 이상 준비합니다.
  • 토론 준비: 발표 내용을 들으며 비판적인 시각으로 질문을 던지고, 자유로운 토론을 이끌어냅니다.
  • 정리 및 마무리: 다음 주 주제와 역할 담당자를 공지하며 마무리합니다.