44
44
45
45
<!-- 这里可写通用的实现逻辑 -->
46
46
47
- 首先将数组元素转换为字符串,判断字符串长度是否为偶数即可。
47
+ ** 方法一:枚举**
48
+
49
+ 枚举数组 ` nums ` 中的每个元素,将其转换为字符串,判断字符串长度是否为偶数,是则答案加一。
50
+
51
+ 时间复杂度 $O(n \times \log_ {10} m)$,空间复杂度 $O(\log_ {10} m)$,其中 $n$ 和 $m$ 分别为数组 ` nums ` 的长度以及数组 ` nums ` 中的最大元素。
48
52
49
53
<!-- tabs:start -->
50
54
55
59
``` python
56
60
class Solution :
57
61
def findNumbers (self , nums : List[int ]) -> int :
58
- return sum (1 for num in nums if ( len (str (num )) & 1 ) == 0 )
62
+ return sum (len (str (v )) % 2 == 0 for v in nums )
59
63
```
60
64
61
65
### ** Java**
@@ -65,13 +69,13 @@ class Solution:
65
69
``` java
66
70
class Solution {
67
71
public int findNumbers (int [] nums ) {
68
- int s = 0 ;
69
- for (int num : nums) {
70
- if (( String . valueOf(num ). length() & 1 ) == 0 ) {
71
- ++ s ;
72
+ int ans = 0 ;
73
+ for (int v : nums) {
74
+ if (String . valueOf(v ). length() % 2 == 0 ) {
75
+ ++ ans ;
72
76
}
73
77
}
74
- return s ;
78
+ return ans ;
75
79
}
76
80
}
77
81
```
@@ -82,29 +86,44 @@ class Solution {
82
86
class Solution {
83
87
public:
84
88
int findNumbers(vector<int >& nums) {
85
- int s = 0;
86
- for (int num : nums) {
87
- s += ( to_string(num ).size() & 1) == 0;
89
+ int ans = 0;
90
+ for (int& v : nums) {
91
+ ans += to_string(v ).size() % 2 == 0;
88
92
}
89
- return s ;
93
+ return ans ;
90
94
}
91
95
};
92
96
```
93
97
94
98
### **Go**
95
99
96
100
```go
97
- func findNumbers(nums []int) int {
98
- s := 0
99
- for _, num := range nums {
100
- if (len(strconv.Itoa(num)) & 1) == 0 {
101
- s++
101
+ func findNumbers(nums []int) (ans int) {
102
+ for _, v := range nums {
103
+ if len(strconv.Itoa(v))%2 == 0 {
104
+ ans++
102
105
}
103
106
}
104
- return s
107
+ return
105
108
}
106
109
```
107
110
111
+ ### ** JavaScript**
112
+
113
+ ``` js
114
+ /**
115
+ * @param {number[]} nums
116
+ * @return {number}
117
+ */
118
+ var findNumbers = function (nums ) {
119
+ let ans = 0 ;
120
+ for (const v of nums) {
121
+ ans += String (v).length % 2 == 0 ;
122
+ }
123
+ return ans;
124
+ };
125
+ ```
126
+
108
127
### ** ...**
109
128
110
129
```
0 commit comments