diff --git a/.gitignore b/.gitignore index 87f2dfa..66ba701 100644 --- a/.gitignore +++ b/.gitignore @@ -248,4 +248,15 @@ Module.symvers Mkfile.old dkms.conf -output/ \ No newline at end of file +output/ + +# 忽略 Cargo 的编译输出目录 +/target/ + +# 忽略 Cargo.lock(除非你是一个库) +# https://doc.rust-lang.org/cargo/faq.html#why-do-binaries-have-cargolock-in-version-control-but-not-libraries +Cargo.lock + +# 忽略编译器和工具生成的文件 +**/*.rs.bk +**/*.rs.old diff --git a/README.md b/README.md index 5f8f32e..ea0bb19 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,6 @@ 一些算法题的仓库 - [洛谷](https://www.luogu.com.cn/) [Leetcode](https://leetcode.com/) - diff --git a/leetcode/1.py b/leetcode_py/1.py similarity index 100% rename from leetcode/1.py rename to leetcode_py/1.py diff --git a/leetcode/100.py b/leetcode_py/100.py similarity index 100% rename from leetcode/100.py rename to leetcode_py/100.py diff --git a/leetcode/101.py b/leetcode_py/101.py similarity index 100% rename from leetcode/101.py rename to leetcode_py/101.py diff --git a/leetcode/13.py b/leetcode_py/13.py similarity index 100% rename from leetcode/13.py rename to leetcode_py/13.py diff --git a/leetcode/14.py b/leetcode_py/14.py similarity index 100% rename from leetcode/14.py rename to leetcode_py/14.py diff --git a/leetcode/1608.py b/leetcode_py/1608.py similarity index 100% rename from leetcode/1608.py rename to leetcode_py/1608.py diff --git a/leetcode/169.py b/leetcode_py/169.py similarity index 100% rename from leetcode/169.py rename to leetcode_py/169.py diff --git a/leetcode/20.py b/leetcode_py/20.py similarity index 100% rename from leetcode/20.py rename to leetcode_py/20.py diff --git a/leetcode/202.py b/leetcode_py/202.py similarity index 100% rename from leetcode/202.py rename to leetcode_py/202.py diff --git a/leetcode/21.py b/leetcode_py/21.py similarity index 100% rename from leetcode/21.py rename to leetcode_py/21.py diff --git a/leetcode/26.py b/leetcode_py/26.py similarity index 100% rename from leetcode/26.py rename to leetcode_py/26.py diff --git a/leetcode/263.py b/leetcode_py/263.py similarity index 100% rename from leetcode/263.py rename to leetcode_py/263.py diff --git a/leetcode/27.py b/leetcode_py/27.py similarity index 100% rename from leetcode/27.py rename to leetcode_py/27.py diff --git a/leetcode/28.py b/leetcode_py/28.py similarity index 100% rename from leetcode/28.py rename to leetcode_py/28.py diff --git a/leetcode/338.py b/leetcode_py/338.py similarity index 100% rename from leetcode/338.py rename to leetcode_py/338.py diff --git a/leetcode/35.py b/leetcode_py/35.py similarity index 100% rename from leetcode/35.py rename to leetcode_py/35.py diff --git a/leetcode/36.py b/leetcode_py/36.py similarity index 100% rename from leetcode/36.py rename to leetcode_py/36.py diff --git a/leetcode/37.py b/leetcode_py/37.py similarity index 100% rename from leetcode/37.py rename to leetcode_py/37.py diff --git a/leetcode/461.py b/leetcode_py/461.py similarity index 100% rename from leetcode/461.py rename to leetcode_py/461.py diff --git a/leetcode/48.py b/leetcode_py/48.py similarity index 100% rename from leetcode/48.py rename to leetcode_py/48.py diff --git a/leetcode/58.py b/leetcode_py/58.py similarity index 100% rename from leetcode/58.py rename to leetcode_py/58.py diff --git a/leetcode/645.py b/leetcode_py/645.py similarity index 100% rename from leetcode/645.py rename to leetcode_py/645.py diff --git a/leetcode/657.py b/leetcode_py/657.py similarity index 100% rename from leetcode/657.py rename to leetcode_py/657.py diff --git a/leetcode/66.py b/leetcode_py/66.py similarity index 100% rename from leetcode/66.py rename to leetcode_py/66.py diff --git a/leetcode/67.py b/leetcode_py/67.py similarity index 100% rename from leetcode/67.py rename to leetcode_py/67.py diff --git a/leetcode/69.py b/leetcode_py/69.py similarity index 100% rename from leetcode/69.py rename to leetcode_py/69.py diff --git a/leetcode/7.py b/leetcode_py/7.py similarity index 100% rename from leetcode/7.py rename to leetcode_py/7.py diff --git a/leetcode/70.py b/leetcode_py/70.py similarity index 100% rename from leetcode/70.py rename to leetcode_py/70.py diff --git a/leetcode/83.py b/leetcode_py/83.py similarity index 100% rename from leetcode/83.py rename to leetcode_py/83.py diff --git a/leetcode/88.py b/leetcode_py/88.py similarity index 100% rename from leetcode/88.py rename to leetcode_py/88.py diff --git a/leetcode/9.py b/leetcode_py/9.py similarity index 100% rename from leetcode/9.py rename to leetcode_py/9.py diff --git a/leetcode/94.py b/leetcode_py/94.py similarity index 100% rename from leetcode/94.py rename to leetcode_py/94.py diff --git a/leetcode_rs/Cargo.toml b/leetcode_rs/Cargo.toml new file mode 100644 index 0000000..b4e743a --- /dev/null +++ b/leetcode_rs/Cargo.toml @@ -0,0 +1,6 @@ +[package] +name = "leetcode_rs" +version = "0.1.0" +edition = "2021" + +[dependencies] diff --git a/leetcode_rs/src/main.rs b/leetcode_rs/src/main.rs new file mode 100644 index 0000000..a5e00b6 --- /dev/null +++ b/leetcode_rs/src/main.rs @@ -0,0 +1,14 @@ +// src/main.rs + +mod problem_1 { + pub mod solution; +} + +use problem_1::solution::Solution; + +fn main() { + let nums = vec![2, 7, 11, 15]; + let target = 9; + let result = Solution::two_sum(nums, target); + println!("{:?}", result); // 输出: [0, 1] +} diff --git a/leetcode/1.rs b/leetcode_rs/src/problem_1/solution.rs similarity index 91% rename from leetcode/1.rs rename to leetcode_rs/src/problem_1/solution.rs index b278370..37819d2 100644 --- a/leetcode/1.rs +++ b/leetcode_rs/src/problem_1/solution.rs @@ -1,5 +1,7 @@ use std::collections::HashMap; +pub struct Solution; + impl Solution { /// This function takes a vector of integers (`nums`) and an integer (`target`) as input. /// It returns a vector of integers. @@ -15,7 +17,7 @@ impl Solution { pub fn two_sum(nums: Vec, target: i32) -> Vec { let mut map = HashMap::new(); - for (i, &num) in nums.iter_mut().enumerate() { + for (i, &num) in nums.iter().enumerate() { let complement = target - num; if let Some(&index) = map.get(&complement) { diff --git a/luogu/P1035.c b/luogu_c/P1035.c similarity index 100% rename from luogu/P1035.c rename to luogu_c/P1035.c diff --git a/luogu/P1059.cxx b/luogu_c/P1059.cxx similarity index 100% rename from luogu/P1059.cxx rename to luogu_c/P1059.cxx diff --git a/luogu/P1085.c b/luogu_c/P1085.c similarity index 100% rename from luogu/P1085.c rename to luogu_c/P1085.c diff --git a/luogu/P5703.c b/luogu_c/P5703.c similarity index 100% rename from luogu/P5703.c rename to luogu_c/P5703.c diff --git a/luogu/P5704.c b/luogu_c/P5704.c similarity index 100% rename from luogu/P5704.c rename to luogu_c/P5704.c diff --git a/luogu/p1000.cxx b/luogu_c/p1000.cxx similarity index 100% rename from luogu/p1000.cxx rename to luogu_c/p1000.cxx diff --git a/luogu/p1001.cxx b/luogu_c/p1001.cxx similarity index 100% rename from luogu/p1001.cxx rename to luogu_c/p1001.cxx diff --git a/luogu/P2866.py b/luogu_py/P2866.py similarity index 100% rename from luogu/P2866.py rename to luogu_py/P2866.py diff --git a/luogu/P5079.py b/luogu_py/P5079.py similarity index 100% rename from luogu/P5079.py rename to luogu_py/P5079.py diff --git a/luogu/P5705.py b/luogu_py/P5705.py similarity index 100% rename from luogu/P5705.py rename to luogu_py/P5705.py diff --git a/luogu/p1046.py b/luogu_py/p1046.py similarity index 100% rename from luogu/p1046.py rename to luogu_py/p1046.py diff --git a/luogu/p3717.py b/luogu_py/p3717.py similarity index 100% rename from luogu/p3717.py rename to luogu_py/p3717.py