Skip to content

sukim96/cs_practice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

CS Practice

기본적인 CS 지식을 λ³΅μŠ΅ν•˜κΈ° μœ„ν•œ repository
λ‹€μŒ 두 κ°€μ§€μ˜ CS 지식에 λŒ€ν•΄ 각각 python, java, c++둜 μž‘μ„±ν•œλ‹€.

  • Data Structure
  • Algorithm

Docker image ν•˜λ‚˜λ₯Ό κ΅¬μ„±ν•˜μ—¬ build ν›„ μ‚¬μš©ν•  μ˜ˆμ • (c++, java, python λͺ¨λ‘ μ‹€ν–‰ κ°€λŠ₯ν•˜λ„λ‘ μ„€μ •)

How to run

  1. Python

    • DS의 경우 각 scriptλŠ” ν•΄λ‹Ή DS의 classλ₯Ό νƒ‘μž¬
      • main으둜 μ‹€ν–‰ν•˜λ©΄ test caseλ₯Ό μ‹€ν–‰ν•˜λ„λ‘ μ„€μ •
  2. C++

    • DSλŠ” lib/ λ˜λŠ” include/ λ””λ ‰ν† λ¦¬μ—μ„œ κΊΌλ‚΄ μ“Έ 수 μžˆλ„λ‘ μ„€μ •

    • bin: μ‹€ν–‰ 파일 (binary, test files)

    • lib: shared object

    • include : header files

    • src: source files (c++)

    • cmake: builder files

      • make λ˜λŠ” cmake둜 build structure ꡬ성 (TBD)
    • 싀행이 ν•„μš”ν•  λ•Œ buildλ₯Ό μ§„ν–‰ν•œ ν›„ bin νŒŒμΌμ—μ„œ κ³¨λΌμ„œ μ‹€ν–‰

  3. Java

    • DS의 경우 각 script에 ν•΄λ‹Ή class 및 interface μœ„μΉ˜ν•˜λ„λ‘ κ³„νš
      • μžμ„Έν•œ λ‚΄λΆ€ κ΅¬μ‘°λŠ” μž‘μ„±ν•˜λ©΄μ„œ ν™•μ •
    • main ν•¨μˆ˜λ₯Ό μ–΄λ–»κ²Œ λ°°μΉ˜ν• μ§€λŠ” μΆ”ν›„ κ²°μ • (TBD)

Directory Structure

.
β”œβ”€β”€ python/
|    β”œβ”€β”€ linked_list/
|    |    β”œβ”€β”€ __init__.py
|    |    β”œβ”€β”€ single.py                     : Single Linked List
|    |    └── double.py                     : Double Linked List
|    |
|    β”œβ”€β”€ hash_table/
|    |    β”œβ”€β”€ __init__.py
|    |    β”œβ”€β”€ bucket.py                     : Basic Hashtable with Bucket
|    |    └── linear_probing.py             : Linear-Probing Hashtable
|    |
|    β”œβ”€β”€ tree/
|    |    β”œβ”€β”€ __init__.py
|    |    β”œβ”€β”€ heap.py
|    |    β”œβ”€β”€ bst.py
|    |    β”œβ”€β”€ avl.py
|    |    β”œβ”€β”€ twofour.py
|    |    └── rb.py
|    |
|    β”œβ”€β”€ map/
|    |    β”œβ”€β”€ __init__.py
|    |    β”œβ”€β”€ edge.py
|    |    β”œβ”€β”€ vertice.py
|    |    └── graph.py
|    |
|    β”œβ”€β”€ search/
|    |    β”œβ”€β”€ __init__.py
|    |    β”œβ”€β”€ complete.py
|    |    β”œβ”€β”€ bfs.py                        : Breadth-First Search
|    |    └── dfs.py                        : Depth-First Search
|    |
|    β”œβ”€β”€ sorting/
|    |    β”œβ”€β”€ __init__.py
|    |    β”œβ”€β”€ bubble_sort.py
|    |    β”œβ”€β”€ insertion_sort.py
|    |    β”œβ”€β”€ selection_sort.py
|    |    β”œβ”€β”€ quick_sort.py
|    |    β”œβ”€β”€ merge_sort.py
|    |    └── heap_sort.py
|    |
|    β”œβ”€β”€ shortest_path/
|    |    β”œβ”€β”€ dijkstra.py
|    |    └── prim_janik.py
|    |
|    └── mst/
|         β”œβ”€β”€ kruskal.py
|         └── prim_jarnik.py
|
|
β”œβ”€β”€ cpp/
|    β”œβ”€β”€ bin/                               : Test files (built binaries)
|    |
|    β”œβ”€β”€ lib/                               : Shared Objects
|    |
|    β”œβ”€β”€ include/                           : Header files
|    |
|    β”œβ”€β”€ src/                               : c++ files
|    |
|    └── cmake/                             : builders (TBD)
|
|
β”œβ”€β”€ java/ (TBD)
|
|
β”œβ”€β”€ Dockerfile
β”œβ”€β”€ .gitignore
└── README.md

About

Repository for practicing common CS knowledges (DS, Algorithm)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors