使用Rust語言實現帕斯卡三角
帕斯卡三角rust原始碼:
pub struct PascalsTriangle { rows: Vec<Vec<u32>>, } impl PascalsTriangle { pub fn new(row_count: u32) -> Self { Self { rows: Self::create(row_count) } } fn create(row count: u32) -> Vec<Vec<u32>> { if row_count == 0 { return Vec::new(); } let mut result: Vec<Vec<u32>> = vec![vec![1]]; for _ in 1..row_count { let prev_row = result.last().unwrap().clone(); let mut new_row: Vec<u32> = vec![1]; let mut middle_part = prev_row .iter () .zip(prev_row.iter().skip(1)) .map (| (&a, &b) | a + b) .collect::<Vec<u32>>(); new_row.append(&mut middle_part); new_row.push(1); result.push(new_row.clone()); } result } pub fn rows(&self) -> Vec<Vec<u32>> { self.rows.clone() } } |
相關文章
- 使用 Rust 語言編寫 Java JNI 實現RustJava
- 挑戰程式設計技能 Rust 語言實現程式設計Rust
- 實戰逆向RUST語言程式Rust
- Rust語言Rust
- 使用Go語言實現爬蟲功能Go爬蟲
- 使用Mahout實現自然語言處理自然語言處理
- Rust語言4歲了 | rust-langRust
- Rust 語言學習之旅Rust
- go語言使用切片實現線性表Go
- 使用Go語言實現簡單MapReduce框架Go框架
- 使用佇列實現楊輝三角佇列
- c語言筆記:楊輝三角C語言筆記
- 現代語言Go、Rust、Swift和Dart的比較GoRustSwiftDart
- Rust 語言學習之旅(6)Rust
- Rust 語言學習之旅(3)Rust
- Rust 語言學習之旅(2)Rust
- Rust 語言學習之旅(7)Rust
- Rust語言快速安裝指南Rust
- Rust語言開發資源Rust
- PHP熟手使用Rust作為後端開發語言PHPRust後端
- 程式語言實現模式模式
- windows下ping程式使用C語言實現WindowsC語言
- 如何使用C#語言實現原型模式C#原型模式
- C 語言實現使用靜態陣列實現迴圈佇列陣列佇列
- C 語言實現使用動態陣列實現迴圈佇列陣列佇列
- 5分鐘APIG實戰: 使用Rust語言快速構建API能力開放APIRust
- Golang | Go語言多型的實現與interface使用Golang多型
- 使用PHP實現詞法分析與自定義語言PHP詞法分析
- 如何使用 JavaScript 實現一門程式語言(1) : 前言JavaScript
- 使用 C 語言實現一個虛擬機器虛擬機
- 使用JavaScript實現“真·函數語言程式設計”JavaScript函數程式設計
- Rust語言炒作過分了嗎? - thenewwazooRust
- Apache Dubbo 社群召集 Rust 語言開發者ApacheRust
- Rust語言記憶體管理之妙Rust記憶體
- actix/actix:Rust語言的Actor框架Rust框架
- Rust語言神奇的併發模型Rust模型
- Rust語言與Go語言各自特點概要比較 –thenewstackRustGo
- Go語言實現RPCGoRPC