算法面试题(数据结构)
第二次
面试题
一、
长度为n的链表 求倒数第k 个结点
两次遍历
先求出n的值(用一个循环)
然后求n-k一次遍历 双指针
同一个位置开始 间隔k-1
当其中一个指针指到最后一个时,另一个就是所求
二、(进一步延伸)
123456 -》 561234
将指向最后一个结点的指针指向第一个结点,成为循环链表,然后再断开链表 断开之前要获取到5的结点
第三次
数组:逆置 回文
容器 (列表 字典 集合)
求单链表中循环链表中的入环结点
1.用集合 第一个出现两次的结点就是入环结点 缺点:借助了额外的存储空间
2.快慢指针:准备两个指针,当指针相遇后,快指针回到起点,慢指针不变,快指针改为每次走一步,当两个指针再次相遇时,这个结点就是入环结点判断两个单链表是否相交
六种情况,先判断是否有环(快慢指针)
- 都是无环单链表(第一种和第二种):,只需找到两个链表的尾节点(无环单链表如果相交,必然会有相同的尾节点)
2.(第五种情况)如果一个有环,一个无环,则肯定不相交
3.(第三种):有共同的入环结点
4.(第四种 第六种):先找到两个入环结点,然后用快慢指针,慢指针绕圈一周,如果与快指针相遇,则处于同一个环,否则处于不同的环
- 都是无环单链表(第一种和第二种):,只需找到两个链表的尾节点(无环单链表如果相交,必然会有相同的尾节点)
两个无环单链表相交,找到相交结点
- 借助容器 集合
- 双指针:匀速指针,如果相遇则是相交结点,若没有相遇则在指到null后交换指针从头开始,相遇时则为相交结点(最多交换一次),原理:两者走的距离相同
这个方法也可以用来判断两个链表是否相交,如果不相交则返回null,相交则返回相交结点
判断一个单链表是否是回文链表
1.借助容器 数组 ,若数组是回文数组,则链表也为回文链表
2.遍历一遍后,得到链表结点个数,进而遍历得到倒数结点
3.递归:
** 2020年10月20日17:29:20 **
- 当n远远大于m的时候,求倒数第m个元素
- 维护一个容量为M的小根堆(小-》大 优先队列):
先依次扫描,建立大小为M小根堆,当扫描够m个之后,只需要和根节点比较,然后继续进行siftdown操作
算法面试题(数据结构)相关推荐
- 一周刷爆LeetCode,算法da神左神(左程云)耗时100天打造算法与数据结构基础到高级全家桶教程,直击BTAJ等一线大厂必问算法面试题真题详解 笔记
一周刷爆LeetCode,算法大神左神(左程云)耗时100天打造算法与数据结构基础到高级全家桶教程,直击BTAJ等一线大厂必问算法面试题真题详解 笔记 教程与代码地址 P1 出圈了!讲课之外我们来聊聊 ...
- 【2021最新版】数据结构+算法面试题总结(9+20道题含答案解析)
文章目录 1.栈(stack) 2.队列(queue) 3.链表(Link) 4.散列表(Hash Table) 5.排序二叉树 6. 前缀树 7.红黑树 8.B-TREE 9.位图 算法面试题 1. ...
- 数据结构经典算法面试题
转自:http://hi.baidu.com/geogre_jsj/blog/item/e4b98fd2aab5aa3611df9b92.html 由于这些题,实在太火了.所以,应广大网友建议要求,在 ...
- 数据结构与算法面试题(2022版)
序列号 内容 链接 1 Java基础知识面试题(2022版) https://blog.csdn.net/qq_43061290/article/details/124023797 2 Java集合容 ...
- 2021最新汇总数据结构与算法面试题(准备面试的可以看看)
闲来无事整理了一下数据结构与算法面试题,准备面试的可以看看. 这份面试题汇总除了Java语言的,我还整理了C++和Golang语言的,无论你是做什么开发这份数据结构与算法面试题汇总都可以看,如果你是做 ...
- [Z]谷歌(Google)算法面试题
谷歌(Google)算法面试题 1.谷歌面试题:给定能随机生成整数 1 到 5 的函数,写出能随机生成整数 1 到 7 的函数. 回答:此题的关键是让生成的 1 到 7 的数出现概率相同. 只要我们可 ...
- 66 道前端算法面试题附思路分析助你查漏补缺
大家好,我是漫步. 今天来分享一篇干货,前端关于算法的分析不多,下文列举了66道前端算法面试题,希望对你有所帮助. 作者:Eno_Yao https://segmentfault.com/a/1190 ...
- 微软的100道算法面试题(终结版)
前言 数据结构与算法的重要性已不言而喻,最近,我整理出十大经典排序算法.五大常用算法总结,今天特意整理出微软面试的100题,若有不足之处,欢迎指正!由于篇幅过长,前30道题目写在上一篇,大家可以进我的 ...
- 现实中的算法面试题(已拿Offer)赚到了,赚到了
算法面试题 阅读目录 写在前面 算法百科 算法题目 参考答案 博客总结 博客前言 有提到分享一下面试题,最近也是才能新公司入职没多久,忙着熟悉环境,加上前不久出去玩了一趟(顺便写了篇游记,感兴趣的可以 ...
- 力扣高频|算法面试题汇总(七):树
力扣高频|算法面试题汇总(一):开始之前 力扣高频|算法面试题汇总(二):字符串 力扣高频|算法面试题汇总(三):数组 力扣高频|算法面试题汇总(四):堆.栈与队列 力扣高频|算法面试题汇总(五):链 ...
最新文章
- jsonProperty
- 程序员面试系列——约瑟夫环
- Android CardView卡片布局 标签: 控件
- 关于字符串和字节编码的问题(转)
- java读写excel文件poi_Java利用POI读写Excel文件工具类
- ABP官方文档翻译 1.2 N层架构
- Akka适用于分布式系统《five》译
- Vscode之运行更新出错
- 电脑上怎么做pdf文件_PDF文件怎么拆分?一看就会!
- 试题 算法训练 印章
- Python 数据处理 | 详解缩尾处理(winsorize)和代码实践
- 防止 跨站请求伪造(CSRF)
- 微服务的技术架构路线
- 对Max Pooling的理解
- 全新数据增强 | TransMix 超越Mix-up、Cut-mix方法让模型更加鲁棒、精度更高
- duang!各位期待的傻猴更新稳定版来了~
- 跨境独立建站_做外贸为什么独立建站更重要?
- 距离全球边缘计算大会还有1400小时!
- 计算机研究热点发展趋势,[精品]计算机科学前沿热点及发展趋势.doc
- 正交单位矩阵 matlab,05-06线性代数试卷及答案
热门文章
- (转)机会还是陷阱:诺亚财富的私募股权策略
- 一位挪威博士的PolarDB资深架构师之路
- 降本增效利器!趣头条 Spark Remote Shuffle Service 最佳实践
- 【预测模型】基于matlab离散状态空间模型模拟预测控制仿真系统(单输入单输出)【含Matlab源码 1537期】
- 【钢带厚度预测】基于matlab模拟退火遗传算法优化BP神经网络钢带厚度预测【含Matlab源码 1285期】
- 【股价预测】基于matlab遗传算法优化BP神经网络预测股价【含Matlab源码 1250期】
- 【交通预测】基于matlab GUI交通预测四阶段法交通分配【含Matlab源码 1140期】
- 【路径规划】基于matlab A_star算法机器人静态避障路径规划【含Matlab源码 495期】
- detr 历史解析代码_视觉/ DETR变压器
- python:画混淆矩阵