题解 | #快速排序#

快速排序

https://www.nowcoder.com/practice/38da660199d0400580ac3905c05f5bd6

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <style>
       /* 填写样式 */
    </style>
</head>

<body>
    <!-- 填写标签 -->
    <script type="text/javascript">
        // 填写JavaScript
         const _quickSort = array => {
        //   快排 从小到大
        if (array.length < 2) return array;
        let middleIndex = Math.floor(array.length / 2);
		 // 该下标所在元素(可能重复)第一个不用判断,不用进入遍历,取出
        let middle = array.splice(middleIndex, 1)[0];
        let leftArray = [];
        let rightArray = [];
        for (let i = 0; i < array.length; i++) {
            if (array[i] < middle) {
                leftArray.push(array[i]);
            }else {
                rightArray.push(array[i]);
            }
        }
        return [..._quickSort(leftArray), middle,..._quickSort(rightArray)]
    }
    </script>
</body>

</html>
<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <style>
       /* 填写样式 */
    </style>
</head>

<body>
    <!-- 填写标签 -->
    <script type="text/javascript">
        // 填写JavaScript
         const _quickSort = array => {
        //   快排
            return array.sort((a, b) => (a - b)); 
	}
    </script>
</body>

</html>

全部评论

相关推荐

02-04 17:01
南昌大学 Java
牛客96763241...:拿插件直接投就完了,这玩意看运气的
点赞 评论 收藏
分享
求求要我吧:你教育经历放在下面干什么,而且27届还是28届啊()另外看你简历有两面,通常来说投递运营岗位一面简历就够了。另外个人总结要写也放在简历最下面,然后你奖项那里是2019年的哇哈哈,那你究竟投递的是社招还是实习?实习的话你是第几届是肯定要写出来的,社招的话你这个工作经历又太短太花了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务