首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
废ker
字节跳动_大数据研发工程师
关注
已关注
取消关注
@废ker:
数组-刷题算法总结篇
数组。最基础的一种数据结构,无论是什么样的算法题,大部分都会涉及到对数组的操作。如何有效的利用数组,并且在数组上运用各种算法进行题目求解,是我们学习的目标。常见的基于数组的问题:排序二分查找双指针滑动窗口模拟数组基础数组不同于链表,标准定义:「数组是存放在连续内存空间上的相同类型数据的集合」所以,数组的相邻元素的地址是连续的。同时,可以根据下标来取数组对应位置的值(数组的索引从0开始)。时间复杂度:根据下标取元素O(1)删除下标为x的元素O(n)Java中可以直接new出一个数组,同时也可以使用ArrayList对象来模拟数组。一维数组的定义:二维数组的定义:排序问题排序是最常见于面试中的问题,但经常以两种形式出现:一种是八股文中,考察对排序算法的理解以及复杂度的理解另一种是考察几种特殊的算法,并且写出代码(常见的比如快排、归并排序等)这里不再单独列出。但偶有时候,仅仅需要数组排序结果的时候,可以使用库函数进行排序:从小到大排序Arrays.sort(arr);// 默认从小到大排序自定义排序方式public class shuzu { public static void main(String[] args) { Integer[] arr = new Integer[10]; arr[0] = 10; Arrays.sort(arr); Arrays.sort(arr, (a,b)->b-a); //如果自定义排序,arr的类型需要设置为Integer类型 Arrays.stream(arr).forEach(System.out::println); }}二分查找二分查找是数组中比较常见的问题,常见问题类型:让你求最大的情况下什么最小,或者最小的情况下什么最大在抽象一下:比如一个数组是有序的,让你求一个元素在这个数组的什么位置;其实就是动态的缩小范围、排除掉不在答案之外的范围在解题的过程中,需要明确关注几个点:左右边界的范围左右边界变化之后,新的左右边界是否维持之前的含义什么时候跳出循环leetcode中常见二分问题:https://leetcode.cn/tag/binary-search/problemset/easy: 搜索插入位置 https://leetcode.cn/problems/search-insert-position/description/mid: 寻找峰值 https://leetcode.cn/problems/find-peak-element/description/hard: 寻找排序数组中的最小值:https://leetcode.cn/problems/find-minimum-in-rotated-sorted-array-ii/description/双指针双指针在解决数组问题或者链表问题中较为常见。基本特征:能够通过两个指针实现在线性结构上遍历,从而来解决问题。常见解题方式:相向而行法:两个指针,一个从左边界移动;一个从右边界移动;两者根据条件的不同,相向而行;到达某一个条件之后,停止移动,得到答案。快慢指针:两个指针,同时从一个点出发,每循环一次,一个走一步,另一个走两步,从而实现一快一慢。(在链表中:快指针到达终点时,慢指针走到快指针的一半)leetcode中常见双指针题目:https://leetcode.cn/tag/two-pointers/problemset/easy: 删除有序数组中的重复项 https://leetcode.cn/problems/remove-duplicates-from-sorted-array/description/一个快指针用来指示遇到的数字另一个慢指针用来标识结果位置的数字mid: 三数之和:https://leetcode.cn/problems/3sum/description/滑动窗口滑动窗口主要解决子数组/子序列的问题。可以理解:窗口是可以动态调整大小的(也就是左右边界)通过左右边界的调整,可以满足题目的某些条件,从而能够得到最后的答案。比如满足符合条件的最小窗口长度等。可以将O(n^2)的问题将为O(n)。leetcode中常见滑动窗口题目:https://leetcode.cn/tag/sliding-window/problemset/easy 最长和谐子序列 https://leetcode.cn/problems/longest-harmonious-subsequence/description/典型的滑动窗口题目,求窗口的最大值mid 无重复字符的最长子串:https://leetcode.cn/problems/longest-substring-without-repeating-characters/description/hard: 最小覆盖字串:https://leetcode.cn/problems/minimum-window-substring/description/模拟模拟类型的题目,通常就是考察应变能力主要步骤:题目抽象成模型=>用数组或其他数据结构表示数据=>明白不同状态的转换=>处理边界问题上面提到的是针对数组的常见问题,后续将会出每个板块的专门讲解。
点赞 1
评论 0
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
02-18 18:08
电子科技大学 后端工程师
暑期实习,要来了!!
大家好,我是阿术。27届暑期实习马上就要开始了,大三/研二的同学可以准备起来了。现在找实习越来越卷了,好多得先有实习经历才给你面试,死锁了。我记得我当初找实习那会,焦虑的不行,因为实验室搞的东西和笔试面试中需要的完全不一样,算法、八股,什么的要学,手忙脚乱的。但好在结果是好的,从二月到五月,三个月的拷打换来了蚂蚁和阿里云的暑期实习offer。根据我以及很多同学的经验,发现大家在找暑期实习的都会有一些困惑,比如,暑期实习时间线—投递什么时候开启,什么时候结束,什么时候去实习准备到什么程度可以投递投递渠道有哪些暑期实习时间线暑期实习一般是从二月底开始,三四月份的时候大部分公司都已经开启了,一般可以...
点赞
评论
收藏
分享
02-14 18:15
已编辑
北京邮电大学 Java
总结一下遇到的面试题-网络篇(自用)
TCP篇 1. TCP为什么是可靠的?从基础概念出发,TCP是面向连接的基于字节流的通信协议,从连接管理的角度来说:TCP通过三次握手建立连接,确保通信双方有正常收发能力;通过四次挥手释放连接,确保所有数据被正确接收并妥善处理。这里的可靠指的是报文的可靠传输,换一句话说就是如何保证报文不重不丢:TCP是基于字节流的,每一个字节都有唯一的序列号,这解决了报文重复的问题;接收端接收数据后会回复ACK确认号,这解决了丢包的问题;为了确保数据能够到达,在没有收到ACK的一定时间内,会触发发送方超时重传;另一方面,由接收方主导的流量控制能够避免接收方太多数据处理不过来。这里要注意流量控制和拥塞控制的区别...
点赞
评论
收藏
分享
01-14 17:06
哈尔滨工程大学 Java
后端实习就是纯浪费时间,废了
介绍一下基本情况:岗位:某中厂后端开发实习生,本来学的java,岗位是golang,实际接触的代码全是php😅😅😅工作内容:就是给解决用户在产品使用中反馈的问题,比如看不到评论,收不到通知等等,然后就是查日志,复现问题,调接口,看后端代码。😭😭😭室友在大厂的实习都是写需求啥的,我快一个月了,一行代码没写。😐😐😐求大佬们支个招,该怎么包装这段实习。目前想法:1.因为可以接触到所有代码和接口,看到代码过去的更改记录,打算将工作内容写成负责某某模块开发维护,升级了某个接口这种。然后到时候给面试官展示的就是增加了新方法的整个思路。2.但是吧,接触的全是php,我是不是还得准备php开发框架的东西?而且就算是把过去某一个更改说成自己的,内容也好少啊。3.暑期和秋招还想主攻java,该怎么描述这段实习。佬们支个招吧,孩子没法了。😟😟😟😟
嵌入式的小白:
第一个,这个你看你们代码提交,可以吧,看他们的提交等 第三个,你要是决定走java,那倒是你简历经历写php,那肯定和java的岗位匹配度不高的
大家实习每天都在干啥
点赞
评论
收藏
分享
01-21 10:23
门头沟学院 算法工程师
牛爷爷们求帮帮看简历
本人中(下)211大四,前段时间保研结束,想着玩几个月再找实习,12月下旬开始学习LLM的相关知识,至今刚好一个月,内容又多又杂,目前是在github找的一个简单的RAG,自己在上面改了几种检索方法,加了个agent的壳子,比起其他大佬的multi-agents,多模态,我这简直路边水平啊。我想着咋学都学不完,想就试着能不能找一个agent开发实习,目前简历还有什么地方可以优化一下吗?虚心接受牛爷爷们的建议,如果可以指导一下学习路线,项目推荐,就更加感谢了
点赞
评论
收藏
分享
02-14 12:15
门头沟学院 Java
已经好久没投了
自从一月份回来一直在休息,上一份实习干的生无可恋了,每天偶尔刷两道算法,写写毕设或者就是出去打球,感觉八股已经忘干净了。但是现在家里已经快呆不下去了(家可以常回但不能长待这句话说的是真没毛病),想着过完年再找个实习,但是又怕实习期间没有精力准备春招(秋招就是这样),大家有没有什么建议#春节前,你还在投简历吗?#
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
2
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
谢谢这位朋友
295
2
...
需要再找一个实习吗
180
3
...
得力嵌入式工程师 一面 面经
169
4
...
焦虑,内耗,该如何缓解?
150
5
...
大家过年会给mentor拜年吗?
137
6
...
26届前端简历求分析
110
7
...
实习,27级应届生
94
8
...
项目文档-简历+ 新增function calling功能
89
9
...
八股战士
83
10
...
测试开发 - 小天才 - 二面
76
创作者周榜
更多
正在热议
更多
#
牛客新年AI问运
#
10988次浏览
148人参与
#
第一次面试
#
1072824次浏览
13736人参与
#
牛客AI体验站
#
17262次浏览
297人参与
#
投递几十家公司,到现在0offer,大家都一样吗
#
329228次浏览
2128人参与
#
你喜欢工作还是上学
#
89949次浏览
888人参与
#
被AI治愈的瞬间
#
91177次浏览
690人参与
#
有必要和同事成为好朋友吗?
#
1892次浏览
34人参与
#
虾皮求职进展汇总
#
378427次浏览
2795人参与
#
百度求职进展汇总
#
667826次浏览
6293人参与
#
招聘要求与实际实习内容不符怎么办
#
169601次浏览
926人参与
#
如果不上班,你会去做什么
#
29524次浏览
466人参与
#
非技术岗薪资爆料
#
491550次浏览
3047人参与
#
你找工作的时候用AI吗?
#
173874次浏览
893人参与
#
产品薪资爆料
#
159040次浏览
855人参与
#
你觉得什么岗位会被AI替代
#
41793次浏览
283人参与
#
考研失败就一定是坏事吗?
#
222640次浏览
1543人参与
#
国企vs私企,你更想去?
#
320217次浏览
2532人参与
#
我的求职精神状态
#
431991次浏览
3082人参与
#
秋招想进国企该如何准备
#
127625次浏览
620人参与
#
卷__卷不过你们,只能卷__了
#
42423次浏览
669人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务