数组先小于等于再大于等于的调整
生活随笔
收集整理的這篇文章主要介紹了
数组先小于等于再大于等于的调整
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
給定數(shù)組 arr,請將數(shù)組調(diào)整成 a <= b >= c <= d >= e <= f...的樣子
例如,arr = {3,1,2}
調(diào)整之后,arr 可以是{1,3,2}. 1 <= 3 >=2
調(diào)整之后,arr 也可以是{2,3,1}. 2 <= 3 >=1
arr = {3,1,2,6}
調(diào)整之后,arr 可以是{1,6,2,3}. 1 <= 6 >= 2 <= 3
調(diào)整之后,arr 也可以是{3,6,1,2}. 3 <= 6 >= 1 <= 2
1,如果 arr 長度為 N,要求時間復(fù)雜度為 O(N),額外空間復(fù)雜度為 O(1)。
2,arr 可能會不止一種調(diào)整方案,但只要滿足要求即可。
算法原形:完美洗牌算法
總結(jié)
以上是生活随笔為你收集整理的数组先小于等于再大于等于的调整的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 布隆过滤器、一致性哈希算法总结
- 下一篇: 在数组中找到第 k 小的数