题解 | #数组中重复的数字#rust

数组中重复的数字

https://www.nowcoder.com/practice/6fe361ede7e54db1b84adc81d09d8524

struct Solution{

}

impl Solution {
    fn new() -> Self {
        Solution{}
    }

    /**
    * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
    *
    * 
        * @param numbers int整型一维数组 
        * @return int整型
    */
    pub fn duplicate(&self, numbers: Vec<i32>) -> i32 {
        // write code here
        let mut flag = vec![0; numbers.len()];
        let mut ret = -1;

        // &i作为引用类型,i就代表了解引用
        // for &i in &numbers {
        //     //rust中数组的index要求是usize类型
        //     flag[i as usize] += 1;
        //     if flag[i as usize] > 1 {
        //         ret = i;
        //     }
        // }

        for i in numbers {
            flag[i as usize] += 1;
            if flag[i as usize] > 1 {
                ret = i;
            }
        }

        ret
    }
}

#rust#
全部评论

相关推荐

评论
点赞
收藏
分享
牛客网
牛客企业服务