关注
你可以使用桶排序算法来解决这个问题。具体步骤如下:
1. 创建三个桶,分别用于存储0、1和2。
2. 遍历数组arr,将每个元素放入对应的桶中。
3. 遍历三个桶,将元素依次放入新的数组result中。
以下是使用Python实现的代码:
```python
def sort_arr(arr):
buckets = [0, 0, 0]
for num in arr:
buckets[num] += 1
result = []
for i in range(3):
result.extend([i] * buckets[i])
return result
```
你可以调用这个函数来对数组进行排序:
```python
arr = [2, 0, 1, 1, 2, 0, 2, 1, 0]
sorted_arr = sort_arr(arr)
print(sorted_arr) # 输出:[0, 0, 0, 1, 1, 1, 2, 2, 2]
```
这个算法的时间复杂度为O(n),空间复杂度也为O(n)。
查看原帖
点赞 评论
相关推荐
牛客热帖
更多
正在热议
更多
# 牛客吐槽大会 #
13683次浏览 204人参与
# 实习,不懂就问 #
158508次浏览 1388人参与
# 国企秋招,你投了吗? #
58630次浏览 374人参与
# 软开人,秋招你打算投哪些公司呢 #
177964次浏览 1349人参与
# 毕业后不工作的日子里我在做什么 #
232782次浏览 1691人参与
# 帆软软件工作体验 #
11167次浏览 55人参与
# 运营人求职交流聚集地 #
208529次浏览 1091人参与
# 硬件人秋招进展 #
269354次浏览 3982人参与
# 第一份工作应该只看薪资吗 #
233830次浏览 1855人参与
# 关于春招你都做了哪些准备? #
125816次浏览 717人参与
# 快手工作体验 #
301752次浏览 2904人参与
# AI求职实录 #
19092次浏览 438人参与
# 硬件/芯片公司工作体验 #
146753次浏览 959人参与
# 今年春招是金一银二嘛? #
32599次浏览 309人参与
# 没关系,至少我的__很曼妙 #
14104次浏览 239人参与
# 实习打杂,要跑路吗 #
58264次浏览 340人参与
# 1月小结:你过的开心吗? #
5885次浏览 132人参与
# Prompt分享 #
20146次浏览 484人参与
# 你的第一家实习公司是什么档次? #
14859次浏览 182人参与
# 抛开难度不谈,你最想去哪家公司? #
18693次浏览 249人参与

