题解 | #牛群中的第 k 小牛#

牛群中的第 k 小牛

https://www.nowcoder.com/practice/e92a3c7d42be429e93ccfaa33fde4497

#include <vector>
class Solution {
  public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param nums int整型vector
     * @param k int整型
     * @return int整型
     */
    void quick_sort(vector<int>&nums, int  l, int  r) {
        if (l >= r) return;
        int x = nums[l + r >> 1], i = l - 1, j = r + 1;
        while (i < j) {
            do i++;
            while (nums[i] < x);
            do j--;
            while (nums[j] > x);
            if (i < j)swap(nums[i], nums[j]);

        }
        quick_sort(nums, l, j);
        quick_sort(nums, j + 1, r);

    }
    int findKthSmallest(vector<int>& nums, int k) {
        // write code here
        quick_sort(nums,0,nums.size()-1);
         return nums[k-1];
    }
};

全部评论

相关推荐

点赞 评论 收藏
分享
07-10 14:08
已编辑
江西农业大学 Java
拒绝无效加班的小学生...:期望3k吗?java这辈子有了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-25 17:23
做完了怎么知道过没过呀
投递京东等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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