Files
leetcode/CLAUDE.md
2025-11-18 16:04:55 +08:00

2.7 KiB

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

Project Overview

This is a LeetCode solutions repository organized by date and problem type. The codebase contains solutions in multiple languages including C, C++, Go, and Java. The repository is structured with:

  • Date-based directories (e.g., 23/04/, 25/11/) containing individual problem solutions
  • Data structure implementations in the dataStruct/ directory (LinkedList, Heap, Tree, etc.)
  • Special categories like "dynamic planning" and "else"

Development Commands

Building and Running Code

Since this repository contains individual solution files rather than a unified project, compilation and execution is done per file:

For C/C++ files:

# Compile C file
gcc -o solution filename.c

# Compile C++ file
g++ -o solution filename.cpp

# Run the compiled executable
./solution

For Go files:

# Run Go file directly
go run filename.go

# Build Go executable
go build filename.go

For Java files:

# Compile Java file
javac filename.java

# Run Java program
java filename

Testing Solutions

There are no automated tests in this repository. Each solution should be tested manually by:

  1. Compiling/running the solution file directly
  2. Verifying output against expected LeetCode test cases
  3. Using the data structure helper functions (like list(), len(), creatRandomTree()) for debugging

Code Architecture

Data Structures

The repository includes custom implementations of common data structures:

  • LinkedList: Defined in dataStruct/LinkedList/lists.h with ListNode struct and utility functions (createRandomList, list, array, len)
  • Tree: Defined in dataStruct/Tree/Tree.h with TreeNode struct and creatRandomTree function
  • Heap: Basic template implementation in dataStruct/Heap/Heap.h
  • Queue: Priority queue implementation in dataStruct/Queue/PriorityQueue.c

File Organization

  • Date directories: Solutions organized by year/month (e.g., 25/11/ for November 2025)
  • Language variants: Some problems have multiple language implementations (e.g., 3005.go, 3005.cpp, 3005.java)
  • Utility headers: Common tools and data structures in tools.h and the dataStruct/ directory

Common Patterns

  • Solutions often include debug output functions for visualizing data structures
  • Random data generation functions are provided for testing (createRandomList, creatRandomTree)
  • Header files use proper include guards and pragma once directives

When working on new solutions, follow the existing patterns and place files in the appropriate date directory based on when the solution was created.