输入N个无序的数,请将相同的数删成只剩下一个,并将删除后的数列从小到大排序后输出。(如输入:8 32 12 25 12 8 36 25 26 12 ,输出:8 12 25 26 32 36)
时间: 2024-03-09 15:46:00 浏览: 15
可以使用哈希表来实现这个功能。具体步骤如下:
1. 定义一个哈希表,将输入的数作为键,将其出现的次数作为值。
2. 遍历哈希表,将出现次数大于等于1的键存入一个新的数组中。
3. 对这个数组进行从小到大排序。
4. 输出排序后的数组。
下面是Python代码实现:
```python
def remove_duplicates(nums):
# 定义哈希表
hash_table = {}
for num in nums:
if num not in hash_table:
hash_table[num] = 1
else:
hash_table[num] += 1
# 将出现次数大于等于1的键存入数组
unique_nums = [num for num in hash_table if hash_table[num] >= 1]
# 对数组进行排序
unique_nums.sort()
# 输出结果
print(' '.join(str(num) for num in unique_nums))
if __name__ == '__main__':
nums = [8, 32, 12, 25, 12, 8, 36, 25, 26, 12]
remove_duplicates(nums)
```
输出结果为:8 12 25 26 32 36。
注意:这里使用了Python内置的字典来作为哈希表,可以方便地实现键值对的存储和查询。