题解 | 排序

#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 将给定数组排序
# @param arr int整型一维数组 待排序的数组
# @return int整型一维数组
#
class Solution:
    def MySort(self , arr: List[int]) -> List[int]:

        def qsort(a):
            if not a: return []
            m = a[0] # 快排的中间点
            L, R = [], []
            for i in range(1, len(a)):
                if a[i] <= m:
                    L.append(a[i]) # 比中间点小的放左边
                else:
                    R.append(a[i]) # 比中间点大的放右边

            return qsort(L) + [m] + qsort(R)
        return qsort(arr)

全部评论

相关推荐

2024-12-31 15:43
已编辑
河北工程大学 Java
10.26&nbsp;投递12.27&nbsp;一面自我介绍1.&nbsp;项目是自己做的还是实习?2.&nbsp;论坛项目中Kafka应用于什么场景?3.&nbsp;单个帖子你如何控制重复性点赞?4.&nbsp;&nbsp;点赞功能如何实现?5.&nbsp;redis中key和value分别存储什么?6.&nbsp;redis缓存会落库吗?举例?有设置过期时间吗?7.&nbsp;Quartz定时任务解决什么问题?8.&nbsp;项目中前端是自己做的吗?9.&nbsp;深度分页优化是如何做的?(没答好,应该说用ES来优化的)10.&nbsp;数据库中表的设计有添加哪些索引?11.&nbsp;表的字段大概有多少个?12.&nbsp;说一说Redis分布式锁如何解决资源抢夺的问题?(答的太少,没说到点上,面试官建议我尝试谢谢Lua脚本)13.&nbsp;讲一下CompletableFuture多线程应用的场景?(获得线程返回值和实现future异步)14.&nbsp;有了解过ThreadPoolExecutor的实现类?有配置过它的参数吗?15.&nbsp;代驾项目中MongoDB数据库是自己搭的吗?16.&nbsp;MongoDB和MySQL有什么区别?17.&nbsp;项目是自己在编辑器中启动还是在服务器上搭建?非技术问题:1.&nbsp;最快什么时候可以到岗?2.&nbsp;目前在校吗?未来有在江沪浙发展的意愿吗?3.&nbsp;聊一下你自己的性格和做事风格?4.&nbsp;你的优缺点?反问:1.&nbsp;部门业务?(微服务比较多)2.&nbsp;面试有几轮?(两轮)==========分割线=============12.30&nbsp;二面1.&nbsp;相比非计算机专业,经过培训也能上手工作的人,你的优势?2.&nbsp;计算机网络中ARP协议有什么作用?3.&nbsp;ARP协议工作原理是什么?单播还是广播?怎么查ARP表项?4.&nbsp;你对AI怎么看?5.&nbsp;去苏州两周考察可以接受吗?
查看25道真题和解析
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务