关注
你可以使用桶排序算法来解决这个问题。具体步骤如下:
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)。
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 26届校招投递进展 #
30332次浏览 233人参与
# 小米提前批笔试难吗 #
33997次浏览 357人参与
# 现代汽车前瞻技术研发急速编程挑战赛 #
11735次浏览 126人参与
# 为了找工作你花了哪些钱? #
27722次浏览 262人参与
# 央国企投递记录 #
88035次浏览 1359人参与
# 神州信息工作体验 #
11576次浏览 56人参与
# 你觉得专业和学校哪个对薪资影响最大 #
61331次浏览 490人参与
# 设计人的面试记录 #
123380次浏览 1341人参与
# 来聊聊你目前的求职进展 #
634227次浏览 6745人参与
# 外包能不能当跳板? #
34379次浏览 220人参与
# 你今年的保底offer是哪家 #
118348次浏览 537人参与
# 烟草笔面经互助 #
16893次浏览 180人参与
# 大疆的机械笔试比去年难吗 #
72892次浏览 618人参与
# 打工人的精神状态 #
49534次浏览 858人参与
# 牛友们,签完三方你在忙什么? #
98220次浏览 852人参与
# 听到哪句话就代表面试稳了or挂了? #
170762次浏览 1369人参与
# 如何缓解入职前的焦虑 #
192364次浏览 1339人参与
# 研究所VS国企,该如何选 #
184846次浏览 1783人参与
# 你秋招想去哪些公司 #
22196次浏览 809人参与
# 担心入职之后被发现很菜怎么办 #
130800次浏览 775人参与
# 秋招结束之后的日子 #
75200次浏览 911人参与