还有比手撕算法更难的面试题吗?

一上来就要求手撕快排,以为稳了,结果因为好久没有写,生疏了!写了半小时没写出来!后面面试结束,面试官表示要有一定的代码能力(听到之后,心凉了。。)

快排算法,Java 代码:

public class QuickSort {

    public static void main(String[] args) {
        int[] arr = {29, 10, 14, 37, 13}; // 待排序数组
        quickSort(arr, 0, arr.length - 1); // 调用快速排序函数
        for (int num : arr) {
            System.out.print(num + " ");
        }
    }

    public static void quickSort(int[] arr, int low, int high) {
        if (low < high) {
            int pivot = partition(arr, low, high); // 获取基准值的位置
            quickSort(arr, low, pivot - 1); // 递归排序左半部分
            quickSort(arr, pivot + 1, high); // 递归排序右半部分
        }
    }

    public static int partition(int[] arr, int low, int high) {
        int pivot = arr[low]; // 选择第一个元素作为基准值
        while (low < high) {
            while (low < high && arr[high] >= pivot) {
                high--;
            }
            arr[low] = arr[high]; // 将小于基准值的元素移到低端
            while (low < high && arr[low] <= pivot) {
                low++;
            }
            arr[high] = arr[low]; // 将大于基准值的元素移到高端
        }
        arr[low] = pivot; // 将基准值插入最终位置
        return low; // 返回基准值的位置
    }
}

#你遇到最难的面试题目是_#
全部评论
我年初字节番茄客户端主动约面,但是面试也没撕出来,简历脏了。第一次面试,前一天晚上也没睡好,面试的时候说话也不利索哈哈
点赞 回复 分享
发布于 08-05 09:34 广东
所以是寄了吗大佬
点赞 回复 分享
发布于 08-04 17:50 北京

相关推荐

08-01 16:20
已编辑
四川大学 Java
NewCoderAA...:面试是按你的简历来面,如果简历上没有客户端相关,那就是正常后端面试。而被捞的原因…应该是你投的岗位不缺人了,回到池子里以后被其他部门(客户端)看中,就捞走了
如何判断面试是否凉了
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
4
3
分享

创作者周榜

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