数据结构与算法
文章平均质量分 75
nand库路泽
这个作者很懒,什么都没留下…
展开
-
贪心算法之最大的子组合求解
本来博主是没有心情写这篇博客了,因为昨天住的地方遭贼了。半夜两点多,偷开我家窗户,把博主卧室里面的玫瑰金给偷走了。当时博主就睡得特别不舒服,半夜醒来就发现手机被偷了。搞得博主后半夜基本没有睡,万幸的是,博主的手机开了“查找iphone”功能,因此开启了丢失模式之后,任小贼再牛逼,刷了机也用不了。虽然拿不回来,也要恶心死小偷。所以,在此,博主也提醒各位博友,一定一定要将iphone的“查找iphon原创 2016-04-14 11:47:16 · 4762 阅读 · 1 评论 -
数据结构之快慢指针查找链表中间结点
单链表是一种十分常见和应用广泛的数据结构,也是面试题经常会问到的一个。近期复习单链表,就将这个单链表常见的考点顺便复习了一遍。 面试题:如何最快的获取单链表的中间节点的位置? 一般思路,从头节点开始一个一个元素去遍历,而后确定链表的长度。然后又从头开始遍历单链表,并且进行计数。当计数到达单链表长度一半的位置即为单链表的中间节点。 高级思路,设置两个指针,步长分别原创 2016-04-18 21:29:24 · 6695 阅读 · 1 评论 -
栈表中获取最小值,时间复杂度为O(1)
近来复习数据结构,看到网上有一道数据结构的算法题,该题目为google的一道面试题,国内很多互联网公司也纷纷效仿该题。 题目内容为:对现在的stack(栈)数据结构进行改进,加一个min()功能,使之能在常数,即o(1),时间内给出栈中的最小值。可对push()和pop()函数进行修改,但要求其时间复杂度都只能是o(1)。 解题思路:1.由于题目要求的是一个栈,所原创 2016-04-11 22:16:41 · 7611 阅读 · 0 评论 -
数据结构之循环链表
单链表是十分常用的一种数据结构了,而关于单链表的相关面试题也是层出不穷。经典的问题就是约瑟夫环问题,就可以采用单链表进行解决。 约瑟夫环的问题描述如下:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。与此类似,猴子选大王等等。原创 2016-04-19 22:19:29 · 5246 阅读 · 1 评论