剑指offer编程
perfect_young
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
《剑指offer---链表》:第3、15、16、14、56题(python、C++)
第3题:输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。解题思路:不改变原有链表的结构,使用栈实现反向输出。遍历链表,每经过一个节点,把该节点放到栈中。遍历结束后,从栈顶逐个输出节点的值,保存在vector中。C++/*** struct ListNode {* int val;* struct ListNode *next;...原创 2019-03-26 10:25:41 · 155 阅读 · 0 评论 -
《剑指offer》数组中的逆序对(python)
题目描述在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007输入描述:题目保证输入的数组中没有的相同的数字数据范围:对于%50的数据,size<=10^4对于%75的数据,size<=10^5对于%100的数据...原创 2019-05-08 14:30:53 · 425 阅读 · 0 评论 -
《剑指offer》26、二叉搜索树与双向链表(python)
题目描述输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。解题思路:参考地址:https://blog.youkuaiyun.com/u010005281/article/details/79657259#commentBox采用中序遍历和递归定义两个辅助节点lsHead(链表头节点)、lsTail(链表尾节点)。事实上,...原创 2019-05-08 11:10:15 · 296 阅读 · 0 评论 -
《剑指offer》替换空格(python)
题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。解题思路:参见代码python2.7方法1:# -*- coding:utf-8 -*-class Solution: # s 源字符串 def replaceSpace(self, s): ...原创 2019-05-08 11:07:43 · 448 阅读 · 0 评论 -
《剑指offer》丑数(python)
题目描述把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。解题思路思路1:因为只包含质因子2、3和5,那就让每个数都循环除以2、3和5,如果最后得到1,那么说明是丑数。但是该算法时间太长,不能在规定时间内完成,牛客网不通过!参考https://...原创 2019-05-08 11:02:13 · 392 阅读 · 0 评论 -
《剑指offer》斐波那契数列(python)
题目描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39python# -*- coding:utf-8 -*-class Solution: def Fibonacci(self, n): # write code here a=b=1 i=3 ...原创 2019-05-09 22:42:20 · 277 阅读 · 0 评论 -
《剑指offer》25、复杂链表的复制(python)
题目描述输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空)解题思路:时间复杂度O(n)参考地址 https://www.cnblogs.com/clouds-114/p/8733558.html第一步在原链表的基础上复...原创 2019-04-17 16:46:21 · 144 阅读 · 0 评论 -
《剑指offer》二维数组中的查找 (python)
题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。解题思路: 首先选取数组中右上角的数字。如果该数字等于要查找的数字,查找过程结束;如果该数字大于要查找的数组,剔除这个数字所在的列;如果该数字小于要查找的数字,剔除这个数字所在的行。也就是...转载 2019-04-02 19:25:17 · 184 阅读 · 0 评论 -
《剑指offer---链表》55、36 题: 链表中环的入口节点;两个链表的第一个公共节点(有点萌)
55、给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。思路:设定两个指针,一个慢指针,一个快指针,快指针的速度是慢指针的两倍,然后呢,如果有环,他们一定会在环中相遇。C++/*struct ListNode { int val; struct ListNode *next; ListNode(int x) : val...原创 2019-03-27 16:34:34 · 131 阅读 · 0 评论 -
《剑指offer--栈与队列》21、栈的压入、弹出序列 ;5、用两个栈实现队列 ;20 、 包含min函数的栈(python、C++)
21、栈的压入、弹出序列输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)解题思路:使用一个辅助栈,遍历压入顺序压入辅助栈中,然后判断辅...原创 2019-03-27 12:41:51 · 197 阅读 · 0 评论
分享