在空数组中添加10不重复的数
时间: 2024-05-01 18:17:30 浏览: 12
好的,关于您的问题,我可以给您一个简单的示例代码:
```
#include <iostream>
#include <vector>
#include <cstdlib>
#include <ctime>
#include <algorithm>
using namespace std;
int main()
{
srand(time(NULL));
vector<int> arr;
while (arr.size() < 10)
{
int num = rand() % 100 + 1;
if (find(arr.begin(), arr.end(), num) == arr.end())
{
arr.push_back(num);
}
}
for (int i = 0; i < arr.size(); i++)
{
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
```
这段代码使用了 STL 中的 vector 容器来存储数组,利用 srand 函数和当前时间作为种子生成随机数避免相同的数字出现,并通过 find 函数来检查新生成的数字是否已经存在于数组中。
希望这个示例代码能帮到您,如果您有任何疑问,欢迎随时提出。
相关问题
在空数组中添加10不重复的数js
回答:
可以使用以下代码向空数组中添加10个不重复的数:
```javascript
var arr = []; // 空数组
while (arr.length < 10) {
var num = Math.floor(Math.random() * 100) + 1; // 生成随机数
if (arr.indexOf(num) === -1) { // 判断随机数是否已存在数组中
arr.push(num); // 如果不存在,将随机数添加到数组中
}
}
console.log(arr); // 输出数组
```
从一些不同长度的顺序数组中找到所有不重复数字
你可以使用以下方法来找到所有不重复的数字:
1. 首先,将数组排序,这样相同的数字将会相邻。
2. 创建一个空列表来存储结果。
3. 遍历排序后的数组,检查当前数字是否与前一个数字相同。如果不相同,则将该数字添加到结果列表中。
4. 最后,返回结果列表,其中包含所有不重复的数字。
下面是一个示例代码,用于从一个顺序数组中找到所有不重复的数字:
```python
def find_unique_numbers(arr):
# 排序数组
arr.sort()
# 创建结果列表
unique_nums = []
# 遍历数组
for i in range(len(arr)):
# 如果当前数字与前一个数字不相同,则添加到结果列表中
if i == 0 or arr[i] != arr[i-1]:
unique_nums.append(arr[i])
# 返回结果列表
return unique_nums
# 示例用法
arr = [1, 2, 2, 3, 4, 4, 5, 6, 6]
result = find_unique_numbers(arr)
print(result)
```
输出结果为:[1, 2, 3, 4, 5, 6]
这个方法的时间复杂度为O(nlogn),其中n是数组的长度。