Skip to content

Latest commit

 

History

History
291 lines (194 loc) · 20 KB

README_JP.md

File metadata and controls

291 lines (194 loc) · 20 KB

Leetcode practice npm build status

中文 · English · 日本語

I.プロジェクト情報

1.概要

一文で述べると、「エディタで毎日のleetcode問題を練習し始めましょう!」

もし、エディタで問題を解きたい場合...

もし、簡単で迅速に毎日の問題を取得したい場合...

もし、自分の解答リポジトリを作成したい場合...

そのすべてができるのがleetcode-practiceです!

2.プレビュー

CLI-lc

II.使用上の注意

0.前提条件

ツール 備考
nodejs lts
git lts
我慢 問題を解き続けるための心

1. どう使えるのか? (3つの選択肢)

オプションA.スクリプトCLI (おすすめ)

この方法は、自由自在にlclklfのスクリプトコマンドを使用して、任意のディレクトリで問題を作成およびチェックするためにお勧めされています。

使用例

オプションB.テンプレートプロジェクト (サポート)

自分の解答リポジトリを素早く作成したい場合は、当社のテンプレートプロジェクトを使用して、GitHubプロジェクトを素早く作成し、初期化されたコンテンツを取得できます。

使用例

オプションC.プラグイン (サポート、開発中)

エディタで問題を作成するためにクリック操作を使用したい場合は、当社のエディタプラグイン(予定ではWebStormおよびVSCodeをサポート)を使用して、エディタで問題を作成できます。

使用例

2. どうすればいいですか?(3つの選択肢の詳細なインストールおよび使用手順)

オプションA.スクリプトCLI

1.インストール

lclklfのスクリプトを使用して、任意のnpmパッケージ管理ソフトウェア(たとえば*npmyarnpnpm*など)でプロジェクトまたはグローバルにインストールできます。

# 例:グローバルインストール
# npmを使用してグローバルにインストール
npm install -g leetcode-practice
# pnpmを使用してインストール
pnpm install -g leetcode-practice
# yarnを使用してインストール
yarn global install leetcode-practice

# 例:プロジェクト内のインストール
yarn add --dev leetcode-practice

ヒント: プロジェクト内およびグローバルインストールの違いは、スクリプトの範囲が異なることです。プロジェクト内でインストールすると、スクリプトはそのプロジェクト内でのみ使用できますが、他のプロジェクトでは(leetcode-practiceパッケージがインストールされていない場合)スクリプトを使用できません。一方、グローバルインストールでは、どのディレクトリでもスクリプトを使用できます。

2.使用

ここでは、毎日の作成およびチェック、およびキーワード検索の方法を簡単に説明します。詳細なスクリプトとパラメータについては、KFCとその重要なパラメータの説明を参照してください。

2.1 問題の作成

スクリプトの範囲内で、指定の日の毎日の問題を作成するには、lcを実行します。

# 私の作業ディレクトリに移動する
cd my-workspace
# 毎日の問題を作成する
lc

次のプロンプトが表示されると:

MODE: today
問題[299.猜数字游戏]を取得しました!
問題ファイルの場所:/my-workspace/299.bulls-and-cows/question.js

問題は作成されました!エディタで問題を解く準備ができました!

2.2 問題のチェック

問題の解答コードを書き終えたら、lkスクリプトを使用して問題の簡単なチェックを行うことができます!

# lkスクリプトはlcスクリプトと対応しています。パラメータなし

の場合、今日の問題をチェックすることを意味します
lk

以下のようなメッセージが表示されます:

MODE: today
問題[299.猜数字游戏]のテスト結果:
┌────────────┬──────────────────────────────────────────┬──────────────────────────────────────────┬────────────┬────────────┐
│  テスト結果  │                 期待結果                   │                 実行結果                  │  実行時間    │  メモリ使用量   │
├────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼────────────┼────────────┤
│    パス    │                  "1A3B""1A3B"                  │  0.1361ms  │  2.79 KB   │
│    パス    │                  "1A1B""1A1B"                  │  0.0623ms  │  2.93 KB   │
└────────────┴──────────────────────────────────────────┴──────────────────────────────────────────┴────────────┴────────────┘
問題提出へのリンクをクリックしてください: https://leetcode.cn/problems/bulls-and-cows/

テスト結果期待結果実行結果実行時間メモリ使用量の情報が表示されます。

2.3 問題の検索

キーワード検索は、lfスクリプトの主要な機能の1つです。キーワードの形式で問題情報を取得し、簡単に作成できます。

# lfスクリプトは完全なインタラクティブなスクリプトで、プロンプトに従って入力操作を行うことで、希望する情報を簡単に取得できます
lf

以下は、two-sum問題をキーワードで検索して作成する方法の例です。

# キーワード "two sum" を入力し、Enterキーを押すと、すべての"two sum"に関連する問題が表示されます。キーボードの上下キーを使用して選択し、Enterキーを押して確認します。
? 検索モードを選択してください? キーワード検索
? キーワードを入力してください 二つの数
? 問題を選んでください 1.两数之和
1
MODE: identity
問題[1.两数之和]を取得しました!
問題ファイルの場所:fill:///my-workspace/1.two-sum/question.js:36

注意: 作成時に、クリック可能なファイルパスが表示され、エディタのコンソールでクリックすると、対応するファイルの関数の開始位置が直接開きます。

オプションB.テンプレートプロジェクト

1.テンプレートプロジェクトの作成
  1. GitHubでテンプレートプロジェクトleetcodePracticeTemplateを開きます。
  2. 右上隅のUse this templateをクリックし、Create a new repositoryを選択します。
  3. 通常のリポジトリの作成と同様に情報を入力します。
  4. しばらく待ちます...そして完了です。これで、自分のleetcode解答リポジトリができました!

作成プロセスの準備画像

2. テンプレートプロジェクトの使用
1. プロジェクトをクローンし、依存関係を初期化します。

例: 個人的なプロジェクトを使用します。

# これは例です。自分のプロジェクトをクローンしてください。(あなたがこれを試している時点で、このプロジェクトはもうクリアされているかもしれませんが、正常な現象なので疑わないでください)
git clone [email protected]:wh131462/my-leetcode-practice.git
# プロジェクトディレクトリに移動
cd my-leetcode-practice
# 初期化
npm i
2. プロジェクト内での使用

テンプレートプロジェクトでは、leetcode-practiceを使用する方法は2つあります。1つはプロジェクト内コマンドの形式、もう1つはnpmスクリプトの形式です。詳細な使い方とパラメータについては、KFCとその重要なパラメータの説明を参照してください。

# ルートディレクトリで実行するnpm run lc コマンドを使用して、今日の問題を作成します。デフォルトで -d src を設定しているため、src ディレクトリ内で作成されます
npm run lc
# または yarn: 好きなどちらかのパッケージ管理ツールを使用できます
yarn lc

あなたはまた、lcコマンドを使用して作成することもできますが、あなたはプ

ロジェクト内でしかスクリプトを使用できません(あなたがleetcode-practiceをグローバルにインストールしていない場合)。

# ここでの注意点として、プロジェクト内コマンドとは、コマンドの作用範囲が現在のプロジェクトディレクトリに限定されることを意味します。つまり、他のディレクトリで lc コマンドを試しても効果はありません。
# 同様に、最初にインストールしたときに、プロジェクト内で lc コマンドを使用しても、そのコマンドが機能しない場合があります。この場合は、ターミナル(terminal)を閉じて再度開いて、キャッシュを手動で更新する必要があります。
# npmスクリプトは、package.jsonのscriptsフィールドにエンベロープされたスクリプトコマンドのことです。

# lcコマンドを使用して作成することもできますが、その場合はプロジェクト内でしか使用できません(あなたが"leetcode-practice"をグローバルにインストールしていない場合)。
lc

注意: ここで強調すると、プロジェクト内コマンドは、コマンドの作用範囲が現在のプロジェクトディレクトリに限定されることを意味します。つまり、他のディレクトリで lc コマンドを試しても効果はありません。同様に、最初にインストールしたときに、プロジェクト内で lc コマンドを使用しても、そのコマンドが機能しない場合があります。この場合は、ターミナル(terminal)を閉じてから再度開き、キャッシュを手動で更新する必要があります。npmスクリプトは、package.jsonのscriptsフィールドにエンベロープされたスクリプトコマンドのことです。

3. 依存関係の更新

更新したい場合は、updateという名前の封印されたnpmコマンドを使用して、最新バージョン(latest)leetcode-practiceをインストールできます。

# どちらかのパッケージ管理ツールを使用して実行できます
npm run update
# もちろん、コマンドを手動で実行することもできます
npm i -D leetcode-practice

オプションC.プラグイン(開発中)

3. KFCとその重要なパラメータの説明 (3つのオプション共通のリファレンスガイド)

[0].KFCとは?

KFCは、当社の3つの主要コマンドlklflcを素早く覚えるための簡単な記憶法です。

コマンド 説明
lk 主要なチェックコマンドであり、3つのモードに対応する問題のチェックを行います
lf 主要な検索コマンドであり、Hot100、キーワード検索、条件検索などのモードで問題を検索し、問題を作成します
lc 主要な作成コマンドであり、3つの作成モード(毎日の問題、指定された問題、ランダムな問題)をサポートし、問題の作成を行います

[1]. lk (問題のチェック)

簡易パラメータ 完全パラメータ 説明
無し/-t --today 今日の毎日の問題をチェックします。
問題番号/-i <identity> --identity <identity> 指定された番号に対応する問題をチェックします。指定されたIDが現在の作業ディレクトリに存在するかどうかも確認します。
-r --random 最後に使用されたランダムモードで作成された問題をチェックします。
-e --easy インタラクティブにプロンプトに従って問題をチェックします。

注意: チェックする際は、どのモードを使用するかに注意してください。対応するモードの作成操作をすでに実行したことを確認してください。 指定番号モードは例外であり、作成されていない問題をチェックすることもできます。

[2]. lf (問題の検索)

簡易パラメータ 完全パラメータ 説明
無し 無し インタラクティブにクエリに入り、ヒントに従って問題を検索したりフィルタリングしたりして問題を作成します。

[3]. lc (問題の作成)

簡易パラメータ 完全パラメータ 説明
無し/-t --today 今日の毎日の問題を作成します。
問題番号/-i <identity> --identity <identity> 指定された番号に対応する問題を作成します。
-r --random まだ現れていないランダムな問題を作成します。
-e --easy インタラクティブに問題を作成します。

[4]. 汎用パラメータ

簡易パラメータ 完全パラメータ 説明
-d <directory> --directory <directory> 作業ディレクトリを指定します(現在の実行ディレクトリの相対パス)。これは作成とチェックの両方に影響を与えます。
-V --version バージョン番号を確認します。
-v --ver Leetcode-practice のバージョン情報と追加情報をチェックする
-h --help ヘルプ情報を取得します。
-l [language] --language [language] パラメータなしで現在の言語環境を取得します(デフォルトはJavaScript)。言語を指定すると、その言語の環境が設定されます(たとえば、-l javaでJavaの環境が設定されます)。
-u --update 現在のスクリプトまたは依存関係を更新します。

注意: 汎用パラメータはlk,lf,lcの3つのスクリプトでサポートされていますが、その使用法の意味論は一般的には同じですが、いくつかの指示には異なる挙動が含まれる場合があります(たとえば、lcコマンドで-dパラメータを指定した場合は、指定したディレクトリ内で問題を作成するのに対し、lkコマンドで-dパラメータを指定すると指定したディレクトリに問題をチェックします)。

III. その他の情報

1. 貢献者たち

このプロジェクトの開発と改善には、これらの貢献者のご努力が不可欠です。ここに、すべての方々に心から感謝いたします!

2. 貢献方法

もしオープンソースに対する情熱を持ち、私たちのオープンソースイニシアチブに貢献したいとお考えでしたら、貢献ガイドライン を参照してください。

3. 使用フィードバック

使用上の問題がある場合や、提案がある場合は、使用フィードバックグループにご参加ください!

グループで開発者と対面してコミュニケーションを取り、新たなアイデアを生み出すことを願っています!

フィードバックグループ

4. Starのトレンドチャート

Star History Chart