📜  多拉特资本面试经历 |设置 1(校内)

📅  最后修改于: 2022-05-13 01:58:21.047000             🧑  作者: Mango

多拉特资本面试经历 |设置 1(校内)

那是一次校园面试。共有140名学生申请了这份工作,3名学生收到了录取通知书。

有4轮

第一轮:编码
我们被要求在 2 小时内完成三个程序。一个程序很难,另外两个非常简单。每个程序的权重不同
程序 1(最高权重)
从任一端插入和删除链表中的整数值。即插入和删除应仅从一端。还可以在任何点找到链表中的最大值。
此 ADT 上的所有操作都需要以恒定的时间复杂度完成。
节目二(中等权重)
我不记得问题了,参考本文末尾的代码。
程序3(最小权重)
它是为快速排序编写代码。

第 2 轮:Apitude:quants 和 C 输入输出
这是一个笔和纸轮。
C 输入输出题 20 道,能力题 10 道,有负分。
由于负面标记,问题很棘手,因为选项非常接近,例如,
a) 程序给出警告并给出输出……。
b) 编译时错误
c) 运行时错误
d) 执行输出......

在某些情况下,只需进行一些复杂的计算,Quants 问题就很容易了。
我想这次测试的总时间是 40 分钟,但足以解决所有问题。

几天后,共有11名学生入围面试。

第三轮:面试
基本的问题,但在 C 上很棘手。比如静态、全局、外部、静态全局和全局之间的差异。
在定义如何修复它之前给出了一些代码,其中使用了变量。
ans:使用 extern 声明变量,编译器之后会找到定义

有人问了一个谜题,一根由 7 个单位组成的银棒被分成 3 部分来支付一个要工作 7 天的员工的工资。
作为一组非常小的解决方案,我能够进行蛮力和一些逻辑思考,并迅速提出答案。

随后面试官询问了内存泄漏和一些可能发生内存泄漏的复杂情况。

第 4 轮:面试 2
第一次面试后,5名学生入围第二轮面试。
这是一个非常短的 10 分钟面试,每个问题都被问了 2 个问题,每个问题都有 5 分钟的时间来解决。

问题1:在2个链表中找到交点。

我被问到一些关于蔬菜小贩和假钞的问题,我给出了正确的答案,但面试官重新解释了这个问题,但不幸的是我第二次也无法理解这个问题,到那时 10 分钟就结束了。
第二天我被选中并在 3 天内收到了录取通知书

总体来说是一次不错的体验,希望这篇文章对其他人有所帮助。

/*
time complexity :O(n)
space complexity:O(1)
input size is not considered for computing space complexity
*/
#include
  
int main()
{
    int array_size;
  
    printf("enter the array size : ");
  
    scanf("%d",&array_size);
    int *array=(int *)malloc(sizeof(int)*array_size);
    int iteration=0;
    printf("enter the array elements \n");
    for(; iterationmax_sum?current_sum:max_sum;
    }
  
    printf("\n max sum from all sorted sub array is: %d\n",max_sum);
    free(array);//although is not required to free the data since program exits
               // and there is no problem of memory leak,but a good practice to free data
    return 0;
  
  
  
}
/*
output:
xxxxxx@ubuntu:~$ ./a.out
enter the array size : 10
enter the array elements
1 2 3 4 2 7 1 4 2 5
  
 sorted sub elements : 1 2 3 4 ,sum : 10
 sorted sub elements : 2 7 ,sum : 9
 sorted sub elements : 1 4 ,sum : 5
 sorted sub elements : 2 5 ,sum : 7
 max sum from all sorted sub array is: 10
  
*/