添加 0053.最大子序和、0135分发糖果和0455分发饼干的 Rust版本

This commit is contained in:
wang
2022-05-01 21:08:57 +08:00
parent ce8e2019db
commit dd514eb087
3 changed files with 69 additions and 16 deletions

View File

@ -212,6 +212,20 @@ func maxSubArray(nums []int) int {
}
```
### Rust
```rust
pub fn max_sub_array(nums: Vec<i32>) -> i32 {
let mut max_sum = i32::MIN;
let mut curr = 0;
for n in nums.iter() {
curr += n;
max_sum = max_sum.max(curr);
curr = curr.max(0);
}
max_sum
}
```
### Javascript:
```Javascript
var maxSubArray = function(nums) {

View File

@ -213,6 +213,25 @@ func findMax(num1 int ,num2 int) int{
}
```
### Rust
```rust
pub fn candy(ratings: Vec<i32>) -> i32 {
let mut candies = vec![1i32; ratings.len()];
for i in 1..ratings.len() {
if ratings[i - 1] < ratings[i] {
candies[i] = candies[i - 1] + 1;
}
}
for i in (0..ratings.len()-1).rev() {
if ratings[i] > ratings[i + 1] {
candies[i] = candies[i].max(candies[i + 1] + 1);
}
}
candies.iter().sum()
}
```
### Javascript:
```Javascript
var candy = function(ratings) {

View File

@ -191,6 +191,26 @@ func findContentChildren(g []int, s []int) int {
}
```
### Rust
```rust
pub fn find_content_children(children: Vec<i32>, cookie: Vec<i32>) -> i32 {
let mut children = children;
let mut cookies = cookie;
children.sort();
cookies.sort();
let (mut child, mut cookie) = (0usize, 0usize);
while child < children.len() && cookie < cookies.len() {
// 优先选择最小饼干喂饱孩子
if children[child] <= cookies[cookie] {
child += 1;
}
cookie += 1
}
child as i32
}
```
### Javascript
```js
var findContentChildren = function(g, s) {