首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
数据结构和算法
订阅
hetaoo
更多收藏集
微信扫码分享
微信
新浪微博
QQ
12篇文章 · 0订阅
[算法总结] 17 题搞定 BAT 面试——链表题
链表是面试过程中经常被问到的,这里把剑指offer 和 LeetCode 中的相关题目做一个汇总,方便复习。 1. 在 O(1) 时间删除链表节点 题目描述:给定单向链表的头指针和一个节点指针,定义一个函数在O(1)时间删除该节点。 解题思路:常规的做法是从链表的头结点开始遍历…
一些常用的算法技巧
例:在统计一个字符串中字幕出现的次数时,我们就可以把这些字母当做数组下标,在遍历的时候,如果字母A遍历到,则arr['a']就可以加1了。 其实这两种方法的思想是一致的。 例:给你n个无序的int整型数组arr,并且这些整数的取值范围都在0-20之间,要你在 O(n) 的时间复…
那些年,面试中常见的数据结构基础和算法题(上) | 掘金技术征文
作为一个多年的老菜鸟,有感于大部分的公司面试 “面试造航母,工作螺丝钉” 的作风,特整理了这个数据结构和算法面试题系列。对于校招而言,如果没有太多实践/实习经验,大公司往往喜欢考察数据结构和算法,如微软就特别喜欢在校招时手写算法题,而且难度还不小,当年我毕业找工作时也是颇受折磨…
看图轻松理解数据结构与算法系列(Trie树)
已删!
数据结构和算法面试题系列—链表
链表作为一种基础的数据结构,在很多地方会用到。如在Linux内核代码,redis源码,python源码中都有使用。除了单向链表,还有双向链表,本文主要关注单向链表(含部分循环链表题目,会在题目中注明,其他情况都是讨论简单的单向链表)。双向链表在redis中有很好的实现,也在我的…
[算法总结] 20 道题搞定 BAT 面试——二叉树
0. 几个概念 完全二叉树:若二叉树的高度是h,除第h层之外,其他(1~h-1)层的节点数都达到了最大个数,并且第h层的节点都连续的集中在最左边。想到点什么没?实际上,完全二叉树和堆联系比较紧密哈~~~ 满二叉树:除最后一层外,每一层上的所有节点都有两个子节点,最后一层都是叶子…
数据结构-栈与队列
从这个简单的例子就能看出,只是 3 个元素,就有 5 种可能的出栈次序,如果元素数量多,其实出栈的变化将会更多的。这个知识点一定要弄明白。 两者没有涉及到任何循环语句,因此时间复杂度O(1)。 对于两栈共享空间的 push 方法,我们除了要插入元素值参数外,还需要有一个判断是栈…
数据结构-线性表
线性表的两种物理结构的第一种一一顺序存储结构。 线性表的长度是线性表中数据元素的个数,随着线性表插入和删除操作的进行,这个量是变化的。 在任意时刻,线性表的长度应该小于等于数组的长度。 其实,内存中的地址,就和图书馆或电影院里的座位一样,都是有编号的。 存储器中的每个存储单元都…
从实例中了解动态规划的基本思想
动态规划,是一种解决棘手问题的方法,它将问题分成小问题,并从解决小问题作为起点,从而解决最终问题的一种方法。 看不明白没关系,后面我们会从几个实例中逐渐让大家摸清规律。 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬…
校招中我,细细品味了这些题... | 掘金技术征文
使2个字母a连续出现,至少需要3次操作。即把第1个位置上的a移动到第4个位置。 所以在至多操作2次的情况下,最多只能使2个b或2个a连续出现。 动态规划。 以a字符为例,令 dp[i][j] 表示将从第 i 个 a 字符(包含)到第 j 个 a 字符(包含)之间的所有 a 字符…