鼠鼠求路

如题,鼠鼠是位四非高校计科大二学生,绩点前30%,算法各大平台刷了有150道,大部分都只是入门题,现在对未来感到很迷茫,大一就知道不能跟学校走,,但是没有确定的方向,一会梭哈C/C++,一会梭哈Java,又去搞Python,又去学Go,现在学校还在教C#,前三个语言基础语法都会个80%,黑马的javaweb看了一大半,但是现在真的没有确定的目标了,鼠鼠不甘于平凡,想要进大厂,又没有考研的打算,求求各位牛友帮我指明一条道路吧!

全部评论
不要只看语言啊,语言知识工具,你要看你想从事啥,计算机得,计网,计组,数据结构等也有学习吧,至少有个大概得了解啊,只学语言,但你学得语言又没有实际上用,你学到什么程度,你自己也无法考核量化啊,再说语言实际工作中不需要会那么多,公司都分部门的,像我这只要会c就行。 计算机很多方向,你可以考虑以后想从事啥,比如从技术方向考虑,服务器,客户端,app,系统,驱动等,你想从事啥,再从行业角度考虑,如游戏,嵌入式,芯片,汽车,医疗,互联网等行业,你想从事啥,把想从事得技术和想从事得行业一确定,那你需要用什么语言,该学习什么技术知识一下就知道了
2 回复 分享
发布于 11-01 14:37 陕西
帮顶
1 回复 分享
发布于 10-14 20:39 江西
不要来回跳,这是大忌,选Java或者C++梭哈就行了
点赞 回复 分享
发布于 11-02 17:02 安徽
看你学的很杂,一会这一会那的,要不你直接去网上找相关的简历,然后看在各种招聘软件海投一下就知道了,看看那个机会多
点赞 回复 分享
发布于 10-29 13:51 广西
可以试着找些实习,看一个自己感兴趣擅长方向
点赞 回复 分享
发布于 10-27 21:09 山东
本科不都是java和go吗一般
点赞 回复 分享
发布于 10-26 10:56 江苏
转测开
点赞 回复 分享
发布于 10-21 23:26 浙江
测开可以
点赞 回复 分享
发布于 10-21 14:50 广东
不要学这么杂 选好一个方向猛猛干才行
点赞 回复 分享
发布于 10-20 10:25 北京
蹲个建议
点赞 回复 分享
发布于 10-16 00:38 河南
点赞 回复 分享
发布于 10-15 23:31 江苏

相关推荐

核心思路是先统计链表总长度,确定需要反转的组数,再逐组局部反转并重新连接,计算出需要反转的组数s = n/k;然后循环s次,每次对当前 k 个节点进行局部反转,反转后将当前组的首尾与前后部分重新连接,最后返回处理后的链表头。对应的代码解析如下:class Solution {public:ListNode* reverseKGroup(ListNode* head, int k) {if(!head || k == 1) return head; // 空链表或k=1无需反转ListNode* dummy = new ListNode(0); // 虚拟头节点,简化头节点处理dummy->next = head;ListNode* cur = head;ListNode* pre = dummy; // 记录上一组的尾节点ListNode* next = nullptr;ListNode* prev = nullptr;ListNode* temp = nullptr; // 记录当前组反转前的头节点int n = 0;while(cur != nullptr) {n++;cur = cur->next;}cur = head;if(n == 1) return head; // 只有1个节点直接返回int s = n / k; // 计算需要反转的组数while(s--) {for(int i = 0; i < k; i++) {if(i == 0) temp = cur; // 记录当前组反转前的头节点next = cur->next;cur->next = prev; // 当前节点指向前一个反转节点prev = cur;cur = next;}pre->next = prev;temp->next = cur;pre = temp; // 更新上一组的尾节点为当前组反转前的头节点prev = nullptr; // 重置反转前驱指针}ListNode* newhead = dummy->next;delete dummy; // 释放虚拟头节点,避免内存泄漏return newhead;}};该解法的时间复杂度为 O (n),空间复杂度为 O (1)。
点赞 评论 收藏
分享
这一次面试真的很感慨,能走到三面已经是我意料之外了。非常感谢我遇到的各位面试官,很和蔼,我不会的问题引导着我去思考,我也深刻地认识到我对于各个组件的底层原理理解的薄弱。一面:拷打了一些八股,对于我简历上的项目问了更深的一个层次,我勉勉强强回答上来,在问的过程中问到了一些偏底层的东西,比如说:C++在分配内存,操作系统,CPU等都做了些什么工作,为什么能够分配内存等。手撕了一道算法题,秒了。二面:被匹配到了基础平台研发部门,不得不承认这个部门的面试很难,开局手撕了两道算法题,秒了。然后没有问任何项目相关的问题,问了很多基础的知识,又一次问到了C++智能指针相关,C++虚拟内存分配等,malloc分配内存的全过程(如前128K使用了哪些系统调用,后面使用了哪些系统调用,这些调用做出了哪些优化等);TCP相关的一些知识;僵尸进程等相关知识点。答得磕磕绊绊,面完半个月没有信息,以为挂了,结果走到了三面。三面:面试官是一个很和蔼的大叔。当时的面试状态也非常糟糕,面的一塌糊涂,把面试官都面笑了,不知道该问我什么了。先是根据之前的面评,问了更底层的智能指针(共享指针部分)让我手写一个共享指针(非模板库)。我对于这些知识很多仅限于理论,平常都是写一些算法,项目上只是会用即可,有时候用法也记不清需要现查,确实很少用过这些。我凭借着印象大概描述了一下,存在优化上的问题。后面谈到了交叉引用,面试官让我用模板库里的实现一个交叉引用的案例,实话实说,想不起来。后面面试官又挑了redis问了关于快照与日志相关的问题,问到了快照在内存上是如何操作的,在保存为快照的过程中依旧会有缓存的更新,redis与操作系统都做了哪些工作等。不会,我凭理解与印象回答了一部分,答得不对。等等等等,一大堆抽象的事情。手撕代码并不是算法题,没有写过这种题,不会,真的想不出来。大致意思是有一个链表,你不能将其放到内存中,你有一个函数getnext可以取下一个数据,你不知道有多少个数据,你有一个函数next可以判断是否还有下一个。现在你需要随机的等概率的取出K个节点(每一个节点被选择的概率均为一样的),我的思路被驳回了,链表只能扫描一遍,不能重复扫描,各个节点之间被选择必须是独立的,选择节点必须是等概率的。最后没写出来。挂了。很难受很惋惜也很感慨。也怨不得别人,菜了就是菜了,挨打就立正。下去接着下功夫吧,只能看客户端能不能把我捞起来,或者春招再战。不过拼多多的工作强度确实很大啊,哈哈,一面的面试官一脸的憔悴,黑眼圈特别大。
查看11道真题和解析
点赞 评论 收藏
分享
评论
3
收藏
分享

创作者周榜

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