五分钟玩转面试考点-数据结构-目录

1. 链表

1.1 五分钟玩转面试考点-数据结构-单链表反转(化整为零分析法)
总结下:这篇应该是基础,对链表的操作,其实是采用了化整为零的思维方式,同时也熟悉了节点这一概念。

1.2 五分钟玩转面试考点-数据结构-合并链表(递归萌芽3-调用者模式)
总结下:这篇是两个有序链表合并为一个有序链表的问题,当然使用归并算法的思想是没有问题的。但为什么我称之为——调用者模式?因为我觉得递归的思想,就是本身调用本身假设该方法返回的是一个有序链表,那么我自己使用头插法,将最小的元素插入到头中就行了调用者不需要关注方法的实现。只是方法返回结果,调用者拿到结果之后,再进行逻辑处理或者直接返回。

1.3 五分钟玩转面试考点-数据结构-有序队列中删除重复元素
总结下: (1)有序数组原地删除重复元素:本质上使用了插入排序的思想,维护两个指针:左边数组是无序的,右边数组取出一个和左边数组最右元素比较,若是重复元素,则取下一个元素,直至不相同的元素。然后放入无序数组中。最后选出无序数组。(2)有序链表的删除(链表直接删除):使用cur.next=cur.next.next便可直接删除cur.next元素,cur在删除完重复元素之后,指针才往期前进一步。于是再次删除重复元素!关键是链表删除重复元素的成本地呀(3)链表保留不重复的元素:重复元素全部删除,一个不留。使用标志位,只要是重复元素,那么不会加入到新链表中,并且还要前进一位跳过所有重复元素。注意:是改造的原链表,那么在链表最后节点,要注意手动设置为null。即最后重复条件flag=false&&cur.next==null

2. 二叉树

2.1 五分钟玩转面试考点-数据结构-二叉树的遍历(人之路径,根之输出)
总结下:这篇讲的是遍历二叉树。基本上对树的操作均是建立在遍历算法之上的。为什么说人之路径是因为遍历路径总是相同的(除层次遍历外),只是根输出的时机不同。我们在处理二叉树的问题时,本质上就是处理的。而我们的结题思路,我觉得就可以定位在什么时候处理根合适

2.2 五分钟玩转面试考点-数据结构-二叉树遍历的作用(镜像二叉树+二叉树的深度)
总结下:我们学了二叉树遍历,有什么用呢?具体遇到问题时,我们应该选用那种遍历方式?这篇文章举例2个例子:(1)镜像二叉树:使用队列完成层次遍历,每一层中左右节点互换位置,当然是没问题。上文我们说过,操作二叉树就是操作,而操作想到了二叉树的遍历那么后序遍历中,我们第三次拿到,直接调换左右子树就可以了。前序遍历中,我们第一次拿到,若是直接调换也没问题。(2)二叉树的深度:我们知道h(二叉树)=max(h(左右两子树))+1,那么使用后序遍历,求得左右子树高度后,再输出。当然也可以使用层次遍历实现。

2.3 五分钟玩转面试考点-数据结构-二叉搜索树(递归萌芽2-调用者模式)
总结下:说真的,搜索二叉树的基本特性左子树<根<右子树。一般我们处理就是查找新增节点删除节点。(1)查找节点:二叉搜索树的特性:中序遍历结果一定是有序的。那么我们便可以使用中序遍历的方式进行查找。我们可以直接使用stack,进栈为第一次操作根;出栈为第二次操作根。(2)新增节点:二叉搜索树的特性:比根节点小的放左边,否则放右边。为什么说是调用者模式,是因为,这个方法本身就是返回一个插入好的二叉树,调用者不关心内部进行了什么逻辑,但是结果就是返回一个新的头结点,调用者只是关心结果。(3)删除节点,同理,也是不关心过程,只关心结果。

2.4 五分钟玩转面试考点-数据结构-重建二叉树(递归萌芽1-调用者模式)
总结下:前序+中序确定一个唯一的二叉树。但是我们知道规律“前序数组第一个节点是根节点,中序数组根节点左边是左子树,右边是右子树。”调用者每调用一次这个方法,均会返回一个二叉树。调用者只需做好自己的逻辑即可。即(1)声明根节点。(2)重建左右子树。(3)返回结果。

2.5 五分钟玩转面试考点-数据结构-最大堆与最小堆(TOP N问题)
总结下:堆就是数组组成的完全二叉树,特点是根大于(小于)左右子树。采用的是擂台赛的思维,带入到最(小)大堆的生成的。

2.6 五分钟玩转面试考点-数据结构-二叉树转化为链表(破坏-遍历)
总结下:这个问题,就是在边破坏树结构的时候边遍历树,在未遍历左右子树的时候,root不应该丢失对左右子树的位置。

2.7 五分钟玩转面试考点-数据结构-寻根之旅( 二叉树的最近公共祖先,调用者模式4-尾递归)
总结下:这次是对递归——调用者模式的一次总结。调用者模式一般用于尾递归。若是需要对递归返回值进行进一步处理的话,那么调用递归方法只会返回一个中间变量。二叉树的最近公共祖先,其实就是左右子树的根节点。那么如何最终确定根节点呢?其实需要遍历完左右子树后,也就是使用后序遍历。我们对最终返回的值进行处理。

2.8 五分钟玩转面试考点-数据结构-二叉树的序列化+反序列化
总结下:(1)对二叉排序树的序列化和反序列化。序列化可以直接使用前序遍历。对于反序列化,我们可以找到,遍历数组,直到第一个大于的子节点。那么我们就可以分出左右子树。使用调用者模式完成二叉树的重建。(敲黑板,划重点)需要考虑没有右子树的情况!即整个数组的值都小于根节点。(2)对于二叉树的重建。采用层次遍历进行的序列化,使用queue队列,将元素都保存到queue中(即使为null),反序列化的时候,借助ArrayList(为啥不用LinkedList)小胖考虑到,要查找List里面的元素,还是使用ArrayList速度更快一下,对于一个节点,赋值完左右子树之后,指针才移动到下一位。

3. 排序算法

3.1 归并算法——数据+链表归并排序
总结下:归并排序,是先将数列递归分解成一个个小数组——直至一个元素,然后进行有序数列的合并。数组的归并排序注意的下标边界。链表的归并排序,要使用快慢指针找到链表的中点,然后将链表断开,直至只有一个节点。然后五分钟玩转面试考点-数据结构-合并链表(递归萌芽3-调用者模式)进行有序链表的合并。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,734评论 6 505
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,931评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,133评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,532评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,585评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,462评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,262评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,153评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,587评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,792评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,919评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,635评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,237评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,855评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,983评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,048评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,864评论 2 354

推荐阅读更多精彩内容