$ show QSCTech/zju-icicles
This is the ZJU ICICLES (浙江大学课程攻略共享计划) repository - a massive, student-maintained collection of course materials from Zhejiang University spanning 20+ academic disciplines. The repository contains lecture slides (PPT/PDF), lecture notes (Markdown/LaTeX/Typst), exam papers with solutions, homework assignments with code implementations, lab reports, textbook PDFs, and study guides. While classified as 'data_research' due to the presence of code artifacts in lab directories (compiler construction, data structures, operating systems, computer networks, digital logic), the dominant content is educational courseware - not a data pipeline or ML project. The repository serves as a knowledge base for ZJU students and demonstrates exceptional community curation. Key technical components include: a complete C compiler implementation (lex/yacc + codegen) in 编译原理/实验/, data structure implementations (red-black trees, graph algorithms, B-trees) in 数据结构基础/作业/dsHomework/, RISC-V OS lab code in 操作系统/ and 计算机组成与系统结构/, socket programming labs in 计算机网络/Lab/, and Verilog/FPGA code in 逻辑与计算机设计基础/ and 汇编与接口/. The repository is actively maintained with recent commits, but reproducibility of code artifacts is low due to course-specific dependencies, missing build configurations, and environment assumptions.
The LLM identified 8 files worth highlighting for reuse:
Complete compiler implementation for a Tiger-like language using lex/yacc with semantic analysis, IR generation (tree/frame/translate), register allocation (graph coloring), and code emission. Well-structured multi-chapter progression from lexical analysis through code generation. Reusable as a reference implementation for compiler courses.
Production-quality C/C++ implementations of advanced data structures: red-black trees (with insertion/deletion), binomial heaps, leftist/skew heaps, graph algorithms (Dijkstra, Edmonds-Karp max flow, Hamiltonian cycle, MST), and external sorting. Includes test cases and project scaffolding. Highly reusable as a data structures library reference.
Curated RISC-V reference materials including the RISC-V Reader (Chinese), green card, specification v2.2, and binary/boolean slides. Combined with lab code in 操作系统/作业/ and 计算机组成与系统结构/prj_*/, provides a complete toolkit for RISC-V OS and architecture education.
Complete Java socket programming lab implementing a custom application-layer protocol with client/server architecture. Includes protocol design, message framing, concurrent request handling, and executable JARs. Clean, well-documented example of network application development suitable for adaptation.
Comprehensive Verilog/SystemVerilog reference collection: IEEE standards, quick reference guides, golden reference guide, XST user guides, and practical modules (PS/2 keyboard, VGA controller, beep generator). Includes constraint files (XDC) for Nexys3 board. Excellent reference for FPGA/digital design projects.
Professional-grade lecture slides covering AVL/B-trees, inverted indexes, leftist/skew/binomial heaps, backtracking, divide & conquer, dynamic programming, greedy algorithms, NP-completeness, approximation algorithms, local search, randomized algorithms, and external sorting. Well-structured for self-study or teaching adaptation.
Modern Typst source for numerical analysis notes with checklist and classnotes. Demonstrates contemporary technical writing workflow using Typst (LaTeX alternative) for mathematical content. Reusable as a template for STEM note-taking.
Extensive x86 assembly and Verilog FPGA lab implementations for hardware interfacing: 8255 PPI, 8253 timer, 8259 interrupt controller, 8250/16550 UART, PS/2 keyboard, LCD controller. Includes complete ISE project files, bitstreams, and test benches. Rare depth in hardware/software interface education.