Format C, C++, C#, Go, Java, Python, Rust code.

This commit is contained in:
krahets
2023-09-02 23:54:38 +08:00
parent b6ac6aa7d7
commit dd72335235
53 changed files with 152 additions and 154 deletions
+54 -54
View File
@@ -8,68 +8,68 @@ include!("../include/include.rs");
/* Driver Code */
fn main() {
// 初始化列表
let mut list: Vec<i32> = vec![ 1, 3, 2, 5, 4 ];
print!("列表 list = ");
print_util::print_array(&list);
// 初始化列表
let mut list: Vec<i32> = vec![ 1, 3, 2, 5, 4 ];
print!("列表 list = ");
print_util::print_array(&list);
// 访问元素
let num = list[1];
println!("\n访问索引 1 处的元素,得到 num = {num}");
// 访问元素
let num = list[1];
println!("\n访问索引 1 处的元素,得到 num = {num}");
// 更新元素
list[1] = 0;
print!("将索引 1 处的元素更新为 0 ,得到 list = ");
print_util::print_array(&list);
// 更新元素
list[1] = 0;
print!("将索引 1 处的元素更新为 0 ,得到 list = ");
print_util::print_array(&list);
// 清空列表
list.clear();
print!("\n清空列表后 list = ");
print_util::print_array(&list);
// 清空列表
list.clear();
print!("\n清空列表后 list = ");
print_util::print_array(&list);
// 尾部添加元素
list.push(1);
list.push(3);
list.push(2);
list.push(5);
list.push(4);
print!("\n添加元素后 list = ");
print_util::print_array(&list);
// 尾部添加元素
list.push(1);
list.push(3);
list.push(2);
list.push(5);
list.push(4);
print!("\n添加元素后 list = ");
print_util::print_array(&list);
// 中间插入元素
list.insert(3, 6);
print!("\n在索引 3 处插入数字 6 ,得到 list = ");
print_util::print_array(&list);
// 中间插入元素
list.insert(3, 6);
print!("\n在索引 3 处插入数字 6 ,得到 list = ");
print_util::print_array(&list);
// 删除元素
list.remove(3);
print!("\n删除索引 3 处的元素,得到 list = ");
print_util::print_array(&list);
// 删除元素
list.remove(3);
print!("\n删除索引 3 处的元素,得到 list = ");
print_util::print_array(&list);
// 通过索引遍历列表
let mut _count = 0;
for _ in 0..list.len() {
_count += 1;
}
// 通过索引遍历列表
let mut _count = 0;
for _ in 0..list.len() {
_count += 1;
}
// 直接遍历列表元素
_count = 0;
for _n in &list {
_count += 1;
}
// 或者
// list.iter().for_each(|_| _count += 1);
// let _count = list.iter().fold(0, |_count, _| _count + 1);
// 直接遍历列表元素
_count = 0;
for _n in &list {
_count += 1;
}
// 或者
// list.iter().for_each(|_| _count += 1);
// let _count = list.iter().fold(0, |_count, _| _count + 1);
// 拼接两个列表
let mut list1 = vec![ 6, 8, 7, 10, 9 ];
list.append(&mut list1); // append(移动) 之后 list1 为空!
// list.extend(&list1); // extend(借用) list1 能继续使用
print!("\n将列表 list1 拼接到 list 之后,得到 list = ");
print_util::print_array(&list);
// 拼接两个列表
let mut list1 = vec![ 6, 8, 7, 10, 9 ];
list.append(&mut list1); // append(移动) 之后 list1 为空!
// list.extend(&list1); // extend(借用) list1 能继续使用
print!("\n将列表 list1 拼接到 list 之后,得到 list = ");
print_util::print_array(&list);
// 排序列表
list.sort();
print!("\n排序列表后 list = ");
print_util::print_array(&list);
// 排序列表
list.sort();
print!("\n排序列表后 list = ");
print_util::print_array(&list);
}
@@ -4,7 +4,7 @@
* Author: sjinzh (sjinzh@gmail.com)
*/
include!("../include/include.rs");
include!("../include/include.rs");
use std::{cell::RefCell, rc::Rc};
use tree_node::{vec_to_tree, TreeNode};
@@ -4,7 +4,7 @@
* Author: sjinzh (sjinzh@gmail.com)
*/
include!("../include/include.rs");
include!("../include/include.rs");
use std::{cell::RefCell, rc::Rc};
use tree_node::{vec_to_tree, TreeNode};
@@ -4,7 +4,7 @@
* Author: sjinzh (sjinzh@gmail.com)
*/
include!("../include/include.rs");
include!("../include/include.rs");
use std::{cell::RefCell, rc::Rc};
use tree_node::{vec_to_tree, TreeNode};
@@ -4,7 +4,7 @@
* Author: sjinzh (sjinzh@gmail.com)
*/
include!("../include/include.rs");
include!("../include/include.rs");
use std::{cell::RefCell, rc::Rc};
use tree_node::{vec_to_tree, TreeNode};
@@ -30,7 +30,7 @@ fn dfs(i: i32, src: &mut Vec<i32>, buf: &mut Vec<i32>, tar: &mut Vec<i32>) {
}
/* 求解汉诺塔 */
fn hanota(A: &mut Vec<i32>, B: &mut Vec<i32>, C: &mut Vec<i32>) {
fn solve_hanota(A: &mut Vec<i32>, B: &mut Vec<i32>, C: &mut Vec<i32>) {
let n = A.len() as i32;
// 将 A 顶部 n 个圆盘借助 B 移到 C
dfs(n, A, B, C);
@@ -46,7 +46,7 @@ pub fn main() {
println!("B = {:?}", B);
println!("C = {:?}", C);
hanota(&mut A, &mut B, &mut C);
solve_hanota(&mut A, &mut B, &mut C);
println!("圆盘移动完成后:");
println!("A = {:?}", A);
@@ -4,7 +4,7 @@
* Author: sjinzh (sjinzh@gmail.com)
*/
use std::cmp;
use std::cmp;
/* 爬楼梯最小代价:动态规划 */
fn min_cost_climbing_stairs_dp(cost: &[i32]) -> i32 {
@@ -4,12 +4,12 @@
* Author: sjinzh (sjinzh@gmail.com)
*/
include!("../include/include.rs");
include!("../include/include.rs");
use std::collections::HashMap;
use std::rc::Rc;
use std::cell::RefCell;
use list_node::ListNode;
use std::collections::HashMap;
use std::rc::Rc;
use std::cell::RefCell;
use list_node::ListNode;
/* 哈希查找(数组) */
fn hashing_search_array<'a>(map: &'a HashMap<i32, usize>, target: i32) -> Option<&'a usize> {
@@ -4,11 +4,11 @@
* Author: sjinzh (sjinzh@gmail.com)
*/
include!("../include/include.rs");
include!("../include/include.rs");
use std::rc::Rc;
use std::cell::RefCell;
use list_node::ListNode;
use std::rc::Rc;
use std::cell::RefCell;
use list_node::ListNode;
/* 线性查找(数组) */
fn linear_search_array(nums: &[i32], target: i32) -> i32 {