快速排序
Gnomeshgh___
这个作者很懒,什么都没留下…
展开
-
leetcode 905. 按奇偶排序数组(三种方法)
题目描述给定一个非负整数数组 A,返回一个数组,在该数组中, A 的所有偶数元素之后跟着所有奇数元素。你可以返回满足此条件的任何数组作为答案。示例:输入:[3,1,2,4]输出:[2,4,3,1]输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。思路第一种方法:扫描数组两遍第二种方法:基于快排的思想第三种方法:自定义cmp排序具体代码方法一class Solution {public: vector<int> sortArray原创 2021-05-16 00:28:45 · 147 阅读 · 0 评论 -
第k个数
第可个数问题描述:给定一个长度为n的整数数列,以及一个整数k,请用快速选择算法求出数列从小到大排序后的第k个数。输入格式第一行包含两个整数 n 和 k。第二行包含 n 个整数(所有整数均在1~109范围内),表示整数数列。输出格式输出一个整数,表示数列的第k小数。数据范围1≤n≤100000,1≤k≤n问题分析:这一道题可以用快排来写,直接对数组进行排序,再输出第个数 ,这样时间复杂度是o(nlogn).有一个优化的方法,根据快排的思想而写的快速选择算法,时间复杂度仅为O(n)。这原创 2020-11-02 21:25:53 · 742 阅读 · 0 评论