阿里智能引擎还有校招hc来捞人了

阿里巴巴控股集团智能引擎事业部是全集团最追求技术极致的团队之一,多年来我们一直聚焦于大数据领域的各种技术,提供业内领先的搜索、推荐、图计算、数据分析、时序监控及深度预测引擎。其中,存储服务团队常年立足于北京,持续深耕数据存储和索引技术,时刻拥抱最先进的各项数据引擎技术,包括搜索引擎、向量存储、KV存储、时序引擎、数据湖存储、图计算引擎等。我们已经开源业内领先的工业级搜索引擎Havenask(***********************************)。多年来,我们注重个人成长,追求技术极致。我们呼唤优秀学子加入,与我们一起成长。如果您将在2025年毕业,愿意和我们一起接受技术挑战,满足如下条件之一者,可以立即参加我们的秋招。

1.喜欢参加各种编程比赛,在ACM-ICPC拿到区域赛银奖或金奖以上成绩。
2.索引技术、数据湖存储、向量存储、分布式计算和存储技术、数据库、NoSQL、缓存技术、消息队列等底层方向的硕士研究生。
3.参加过重大纵向科研课题的其他方向的本科、硕士或博士研究生,有A、B类会议或者权威期刊Paper发表者更佳,且不限计算机专业。
4.在知名大型互联网公司或软件公司实习,参与后端系统开发,有生产应用价值的产出。或喜欢自己动手做底层方向的软件项目,并有真正价值的作品。
5.对Pinecone、Milvus、Lucene、Elastic Search、Clickhouse、InfluxDB、Solr、HBase、LevelDB、RocksDB、Kafka、ActiveMQ、HBase、Kudu等某个知名的开源项目有比较深入的学习或研究。

有兴趣的可以私信我交流,或者 简历发送至 **********  
全部评论
只有北京base吗
点赞 回复 分享
发布于 2024-08-15 15:56 广东

相关推荐

04-20 21:45
已编辑
上海交通大学 C++
第一题 k路字符串 优先级队列第二题 裸的拓扑排序,注意判断是否有环第三题 一开始直接写的最长上升子序列(严格),WA,于是推断山的高度必须是整数,于是对nums[i]-i求最长上升子序列(不严格)AC第四题 样例过,提交之后过0%样例,没看出来哪里错了,贴一下代码 #include using namespace std;int main() {    //数据范围来说,至少是需要n方或者更好的算法    //注意读题,首先不是严格大于,其次需要注意交换需要前提条件,即a[i] > x,这意味着交换过程中,x的数值是原来越大的,和x交换的值的门槛也是越来越大,隐含的条件就是如果小于x的数字没有有序,那么久没办法完成操作了    //手玩一下:    //81 324 218 413 324 x = 18 如果与i>=1的位置交换,剩下的18没人可以换走,直接不可行    //18 324 218 413 324 x = 81 同理,如果与i >= 2的位置交换,剩下的81没有可以换走,直接不可行    //18 81 218 413 324 x = 324 我们选择将413与324交换    //18 81 218 324 324     //再来领悟一下样例    //0 2 3 5 4 x = 1 当前发现后面有一个4在捣乱,我们要想办法把它调整下来,但是要调整,就说明当前x = 1需要换上去到某一个位置,也就只能是和2换,这一步是固定的    //0 1 3 5 4 x = 2 同样的,捣乱的4还没有解决,所以继续要调整,当前x = 2只能换在begin,故而    //0 1 2 5 4 x = 3 begin变成了5的下标    //0 1 2 3 4 x = 5 此时发现已经解决//再来领悟一下输出-1的样例    //11 9 x = 10 当前begin = 0 end = 1,但是注意到nums[end] < x,最终不可以被移动,所以已经寄了    //以上过程说明:对于小于x的内容,如果是已经有序地位于开头,那么就已经不可行了    //对于大于x的无序的内容,如果存在多个,比如10 20 30 40 6 4 x= 3,其中6和4都是乱序的,但似乎此时并不需要决定和其中的谁交换,只能从begin开始交换    //3 20 30 40 6 4 x = 10    //3 10 30 40 6 4 x = 20    //3 10 20 40 6 4 x = 30    //3 10 20 30 6 4 x = 40 爆炸    //至此大胆提出假设:先处理得到其中单增的区间    //0 2 3 5 4 x = 1    //其中比x小的部分已经确保落在该有的位置上了    //0 [2 3 5] [4] x = 1 那么我们会把{[2, 3, 5] x = 1}变化为{[1 2 3] x = 5},即相当于原来有序的空间中最大的没了,最小的变成原有x。花费是有序空间大小    //然后x变成了原有空间中最大的那个,然后继续这样扫描//再来手玩一下:    //4 5 6 7 8 9 10 3 x = 1     //{[4 5 6 7 8 9 10] x = 1}->{[1 4 5 6 7 8 9] x = 10} 由于次大的9还是大于无序的3,所以没办法    //总结思路:线性扫描,找到从开始到现在最长的有序集(其中小于x的部分不统计长度)int t;    cin>>t;    while(t--)    {        int n, x;        cin>>n>>x;        vector nums(n);        for (int i = 0; i < n; ++i) cin>>nums[i];        int begin = 0, end = 0, costBegin = -1;        int ans = 0;        bool flag = true;        while(begin < n)        {            //end begin costBegin x ans            while(end + 1 < n && nums[end + 1] >= nums[end])//扫描到end,并更新end            {                if (costBegin == -1 && nums[end] > x) costBegin = end;                ++end;            }            // cout<<"begin = "<<<", end = "<<<", costBegin = "<<<'\n';            //从begin 到 end 递增,且从costBegin开始大于x            if (end == n - 1) break;            if (begin != end)            {                if (nums[end + 1] < nums[end - 1]) {flag = false; break;}//没办法调整                ans += (end - costBegin + 1);                x = nums[end];                end = begin = end + 2;                costBegin = -1;            }            else            {                if (nums[end] > x && x <= nums[end + 1]) {++ans; x = nums[end]; end = begin = end + 2; costBegin = -1;}                else {flag = false; break;}            }        }        if (flag) cout<<<'\n';        else cout<<"-1\n";    }    return 0;}
投递拼多多集团-PDD等公司10个岗位
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

更多
牛客网
牛客企业服务