← 返回 Skills 市场
kadijin

Train your mind with algorithms

作者 KadiJIN · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
73
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install algorithm-practice
功能描述
🎯 Interactive algorithm practice with 100+ problems across Easy/Medium/Hard difficulties. Generates ready-to-run code templates in Java & Python with built-...
使用说明 (SKILL.md)

🎯 Algo Practice - Interactive Algorithm Training

Transform your coding interview preparation with curated algorithm problems, auto-generated code templates, and instant test feedback.

✨ Features

  • 📚 100+ Algorithm Problems - Carefully selected from classic interview questions
  • 🎚️ Three Difficulty Levels - Easy, Medium, Hard with progressive learning path
  • 💻 Dual Language Support - Java & Python templates with identical test cases
  • ✅ Built-in Testing - 5-8 test cases per problem including edge cases
  • 📊 Progress Tracking - Auto-maintained history to avoid duplicates
  • 🎓 Learning Oriented - Hints provided without giving away solutions
  • 🚀 Ready to Run - Complete code templates with main entry points

🚀 Quick Start

Basic Usage

User: 出算法题 / 刷题 / 练算法 / algo practice / 来一道题

The skill will:

  1. Ask for your preferred difficulty level
  2. Generate a unique problem you haven't seen
  3. Create ready-to-code templates in both Java and Python
  4. Track your progress automatically

Example Interaction

User: 刷题
AI: [Asks for difficulty preference]
User: Medium
AI: [Generates problem with templates]

📋 Workflow

Step 1: Check Problem History

Read algo_history.md from the workspace root to track previously assigned problems and ensure no duplicates.

# Algorithm Practice History

| # | Problem Name | Difficulty | Category | Date |
|---|-------------|------------|----------|------|
| 1 | TwoSum | Easy | Array, Hash Table | 2026-03-27 |

Step 2: Ask Difficulty Preference

Use the AskUserQuestion tool:

Question: "Which difficulty level would you like?"

Options:

  • 🟢 Easy - Basic data structures & simple logic, perfect for warm-up
  • 🟡 Medium - Requires algorithmic thinking, covers common patterns
  • 🔴 Hard - Advanced algorithms, optimization, complex data structures

Step 3: Generate Problem

Create an original algorithm problem with:

Problem Structure

  • Title: PascalCase format (e.g., LongestSubstring, MergeIntervals)
  • Difficulty Badge: 🟢 Easy / 🟡 Medium / 🔴 Hard
  • Description: Clear Chinese explanation of input/output requirements
  • Examples: Minimum 2 examples with input/output pairs
  • Constraints: Data ranges, time/space complexity requirements
  • Hints: Direction hints without revealing the solution

Problem Categories (Rotate through these)

Arrays, Strings, Linked Lists, Trees, Graphs, Dynamic Programming, Greedy, Backtracking, Sorting, Searching, Stack/Queue, Hash Tables, Two Pointers, Sliding Window, Bit Manipulation, BFS/DFS, Divide & Conquer

Step 4: Create Code Templates

Java Template: java/\x3CProblemName>.java

import java.util.*;

public class \x3CProblemName> {

    /**
     * TODO: Implement your algorithm here
     *
     * \x3CBrief description of function>
     *
     * @param \x3Cparameter description>
     * @return \x3Creturn value description>
     */
    public \x3CReturnType> \x3CmethodName>(\x3CParameters>) {
        // Write your code here
        return \x3Cdefault value>;
    }

    public static void main(String[] args) {
        \x3CProblemName> solution = new \x3CProblemName>();
        int passed = 0;
        int total = 0;

        // Test Case 1: Normal case
        total++;
        \x3CType> result1 = solution.\x3CmethodName>(\x3Cinput1>);
        if (\x3Ccheck if result1 equals expected1>) {
            System.out.println("Test Case " + total + ": ✅ Pass");
            passed++;
        } else {
            System.out.println("Test Case " + total + ": ❌ Fail");
            System.out.println("  Input: \x3Cinput description>");
            System.out.println("  Expected: \x3Cexpected output>");
            System.out.println("  Actual: " + result1);
        }

        // Test Case 2-N: Include edge cases (minimum 5 total)
        // Must cover: normal cases, boundary cases, special cases

        System.out.println("\
Results: " + passed + "/" + total + " Passed");
        if (passed == total) {
            System.out.println("🎉 All tests passed!");
        } else {
            System.out.println("💪 Keep trying! Review the failed cases above.");
        }
    }
}

Python Template: python/\x3Cproblem_name>.py

from typing import List, Optional


class Solution:
    def \x3Cmethod_name>(self, \x3Cparameters>) -> \x3Creturn_type>:
        """
        TODO: Implement your algorithm here

        \x3CBrief description of function>

        Args:
            \x3Cparameter description>

        Returns:
            \x3Creturn value description>
        """
        # Write your code here
        pass


def main():
    solution = Solution()
    passed = 0
    total = 0

    # Test Case 1: Normal case
    total += 1
    result1 = solution.\x3Cmethod_name>(\x3Cinput1>)
    if result1 == \x3Cexpected1>:
        print(f"Test Case {total}: ✅ Pass")
        passed += 1
    else:
        print(f"Test Case {total}: ❌ Fail")
        print(f"  Input: \x3Cinput description>")
        print(f"  Expected: \x3Cexpected output>")
        print(f"  Actual: {result1}")

    # Test Case 2-N: Include edge cases (minimum 5 total)
    # Must cover: normal cases, boundary cases, special cases

    print(f"\
Results: {passed}/{total} Passed")
    if passed == total:
        print("🎉 All tests passed!")
    else:
        print("💪 Keep trying! Review the failed cases above.")


if __name__ == "__main__":
    main()

Test Case Requirements

  • Minimum 5 test cases per problem
  • Must include:
    • Normal/typical cases
    • Edge cases (empty input, single element, maximum values)
    • Special cases (negative numbers, duplicates, etc.)
  • Consistency: Java and Python test cases must match
  • Proper comparison: Use Arrays.equals() for Java arrays, == for Python lists

Step 5: Update Progress Tracking

Append the problem to algo_history.md in workspace root:

# Algorithm Practice History

| # | Problem Name | Difficulty | Category | Date |
|---|-------------|------------|----------|------|
| 1 | TwoSum | Easy | Array, Hash Table | 2026-03-27 |
| 2 | MergeIntervals | Medium | Array, Sorting | 2026-03-27 |

Auto-increment the sequence number and use current date.

Step 6: Present Problem to User

Display the complete problem with:

  1. 📝 Problem Title & Difficulty Badge
  2. 📖 Problem Description (clear Chinese explanation)
  3. 💡 Examples (input/output pairs)
  4. ⚙️ Constraints (data ranges, complexity requirements)
  5. 🎯 Hints (direction without solution)
  6. 📁 File Locations:
    • Java: java/\x3CProblemName>.java
    • Python: python/\x3Cproblem_name>.py
  7. 🚀 Next Steps: "Implement your solution and run the file to test!"

💡 Pro Tips for Users

How to Use Effectively

  1. Start Easy - Build confidence with fundamentals
  2. Think First - Try to solve before looking at hints
  3. Test Thoroughly - Run both Java and Python versions
  4. Track Progress - Check algo_history.md for your journey
  5. Practice Regularly - Consistency beats intensity

Running Your Solutions

# Java
cd java
javac \x3CProblemName>.java && java \x3CProblemName>

# Python
python python/\x3Cproblem_name>.py

Common Workflow

  1. Read problem carefully
  2. Think about approach (don't code immediately!)
  3. Write solution in the TODO section
  4. Run tests to verify
  5. Debug failed cases
  6. Optimize if needed
  7. Move to next problem

🎯 Problem Quality Standards

  • Interview-Relevant: Based on real coding interview questions
  • Well-Tested: 5-8 comprehensive test cases
  • Progressive Difficulty: Clear learning path
  • No Duplicates: Tracked via history file
  • Bilingual: Java + Python with consistent logic
  • Production-Ready: Ready to compile and run

🛠️ Technical Requirements

  • Method signatures must be clear and type-safe
  • Java filename MUST match public class name
  • Python filename uses snake_case convention
  • Problem titles use PascalCase (e.g., ValidParentheses)
  • NEVER include solutions or implementation hints in code files
  • Test case expected outputs MUST be correct
  • Create java/ and python/ directories if they don't exist

🌟 Target Audience

  • 👨‍💻 Job seekers preparing for coding interviews
  • 🎓 Computer science students learning algorithms
  • 🔄 Developers wanting to practice problem-solving
  • 🌱 Beginners starting their algorithm journey
  • 🏆 Advanced programmers tackling hard problems

📊 Success Metrics

After using this skill, users should:

  • Have working code templates ready to implement
  • Understand the problem clearly with examples
  • Know the constraints and edge cases
  • Feel motivated to solve and test their solution
  • Track their progress over time

💡 Tip: This skill is perfect for daily algorithm practice. Try solving 1-2 problems per day to build strong problem-solving skills!

安全使用建议
This skill appears to do what it says (generate problems, templates, and keep a history), but the SKILL.md includes hidden Unicode control characters which can hide or alter instructions. Before installing or running: (1) Inspect the raw SKILL.md for hidden characters or unexpected text and ask the author to remove them if present. (2) Run the skill in an isolated/sandbox workspace and review any files it creates (algo_history.md, java/... , python/...) before executing generated code. (3) If you plan to let the agent invoke the skill autonomously, be comfortable with it reading/writing files in the workspace. If the author cannot explain the control characters or you cannot safely sandbox execution, don't install or invoke the skill.
功能分析
Type: OpenClaw Skill Name: algorithm-practice Version: 1.0.0 The skill is a legitimate educational tool designed to help users practice algorithm problems. It generates Java and Python code templates with test cases and maintains a local history file (algo_history.md) to track progress. There are no indicators of data exfiltration, malicious execution, or unauthorized system access in SKILL.md or the associated metadata.
能力评估
Purpose & Capability
Name and description align with the runtime instructions: generating problems, creating Java/Python templates, and maintaining a history file. No unrelated binaries, services, or credentials are requested.
Instruction Scope
Instructions explicitly tell the agent to read and update a workspace file (algo_history.md) and to create code files under java/... and python/.... This is coherent for progress tracking and template generation, but it means the skill will read and write files in the user's workspace — review what it will create/modify. The SKILL.md itself is the instruction source and contains a detected unicode-control-chars pattern (see scan findings).
Install Mechanism
No install spec and no code files — instruction-only skill. That minimizes surface area (nothing is downloaded or executed automatically), so install risk is low.
Credentials
No environment variables, credentials, or config paths are required. Requested accesses (workspace file read/write) are proportional to the stated features (history tracking, file generation).
Persistence & Privilege
always is false and model invocation is allowed (default). The skill does not request elevated or persistent platform privileges beyond normal invocation. Be aware it will modify workspace files when used.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install algorithm-practice
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /algorithm-practice 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
algo-practice 1.0.0 – Initial Release - Launch of interactive algorithm practice skill with 100+ curated problems across Easy, Medium, and Hard levels. - Provides auto-generated, ready-to-run code templates in both Java and Python with consistent built-in test cases. - Covers a wide range of algorithm topics including arrays, strings, data structures, dynamic programming, graphs, and more. - Tracks solved problems in a history file to prevent duplicates and measure progress. - Includes hints and clear Chinese problem descriptions, making it ideal for interview preparation and skill improvement.
元数据
Slug algorithm-practice
版本 1.0.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

Train your mind with algorithms 是什么?

🎯 Interactive algorithm practice with 100+ problems across Easy/Medium/Hard difficulties. Generates ready-to-run code templates in Java & Python with built-... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 73 次。

如何安装 Train your mind with algorithms?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install algorithm-practice」即可一键安装,无需额外配置。

Train your mind with algorithms 是免费的吗?

是的,Train your mind with algorithms 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Train your mind with algorithms 支持哪些平台?

Train your mind with algorithms 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Train your mind with algorithms?

由 KadiJIN(@kadijin)开发并维护,当前版本 v1.0.0。

💬 留言讨论