Browse Source

add broken diff_code implementation in rust.

Lucas Stadler 11 years ago
parent
commit
f65ae01db7
1 changed files with 22 additions and 0 deletions
  1. 22 0
      rust/diff_code.rs

+ 22 - 0
rust/diff_code.rs

@ -0,0 +1,22 @@
1
fn diff_encode(vals: &[int]) -> Box<&[int]> {
2
	if vals.len() < 1 {
3
		return box &[]
4
	}
5
6
	let mut encoded: &[int] = &[];
7
	let mut last = vals[0];
8
9
	for i in range(1, vals.len()) {
10
		encoded[i] = (vals[i] - last);
11
	}
12
13
	box encoded
14
}
15
16
fn main() {
17
	println!("diff_encode(&[]) = {}", diff_encode(&[]));
18
19
	let years = [1913i, 1981, 1960, 1920, 1980, 2023, 2807];
20
	println!("years: {}", years.as_slice());
21
	println!("encoded: {}", diff_encode(years));
22
}