File tree 3 files changed +76
-0
lines changed
solution/0200-0299/0287.Find the Duplicate Number
3 files changed +76
-0
lines changed Original file line number Diff line number Diff line change @@ -126,6 +126,33 @@ public:
126
126
};
127
127
```
128
128
129
+ ### **Rust**
130
+
131
+ ```rust
132
+ impl Solution {
133
+ #[allow(dead_code)]
134
+ pub fn find_duplicate(nums: Vec<i32>) -> i32 {
135
+ let mut left = 0;
136
+ let mut right = nums.len() - 1;
137
+
138
+ while left < right {
139
+ let mid = (left + right) >> 1;
140
+ let cnt = nums
141
+ .iter()
142
+ .filter(|x| **x <= mid as i32)
143
+ .count();
144
+ if cnt > mid {
145
+ right = mid;
146
+ } else {
147
+ left = mid + 1;
148
+ }
149
+ }
150
+
151
+ left as i32
152
+ }
153
+ }
154
+ ```
155
+
129
156
### ** Go**
130
157
131
158
``` go
Original file line number Diff line number Diff line change @@ -107,6 +107,33 @@ public:
107
107
};
108
108
```
109
109
110
+ ### **Rust**
111
+
112
+ ```rust
113
+ impl Solution {
114
+ #[allow(dead_code)]
115
+ pub fn find_duplicate(nums: Vec<i32>) -> i32 {
116
+ let mut left = 0;
117
+ let mut right = nums.len() - 1;
118
+
119
+ while left < right {
120
+ let mid = (left + right) >> 1;
121
+ let cnt = nums
122
+ .iter()
123
+ .filter(|x| **x <= mid as i32)
124
+ .count();
125
+ if cnt > mid {
126
+ right = mid;
127
+ } else {
128
+ left = mid + 1;
129
+ }
130
+ }
131
+
132
+ left as i32
133
+ }
134
+ }
135
+ ```
136
+
110
137
### ** Go**
111
138
112
139
``` go
Original file line number Diff line number Diff line change
1
+ impl Solution {
2
+ #[ allow( dead_code) ]
3
+ pub fn find_duplicate ( nums : Vec < i32 > ) -> i32 {
4
+ let mut left = 0 ;
5
+ let mut right = nums. len ( ) - 1 ;
6
+
7
+ while left < right {
8
+ let mid = ( left + right) >> 1 ;
9
+ let cnt = nums
10
+ . iter ( )
11
+ . filter ( |x| * * x <= mid as i32 )
12
+ . count ( ) ;
13
+ if cnt > mid {
14
+ right = mid;
15
+ } else {
16
+ left = mid + 1 ;
17
+ }
18
+ }
19
+
20
+ left as i32
21
+ }
22
+ }
You can’t perform that action at this time.
0 commit comments