![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
剑指Offer
coding something
这个作者很懒,什么都没留下…
展开
-
Python剑指>>调整数组顺序使奇数位于偶数前面
题目描述输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变1.申请新的数组# -*- coding:utf-8 -*-class Solution: def reOrderArray(self, array): # write code ...原创 2019-04-10 15:06:59 · 226 阅读 · 0 评论 -
Python剑指>>输入一个链表,输出该链表中倒数第k个结点。
题目描述输入一个链表,输出该链表中倒数第k个结点。1.先遍历得出链表长度,也就是节点数,在遍历第count-k个节点,注意小于count-k<0的情况# -*- coding:utf-8 -*-# class ListNode:# def __init__(self, x):# self.val = x# self.n...原创 2019-04-11 23:52:38 · 790 阅读 · 0 评论 -
Python剑指>>给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
只要是涉及快速幂运算。* 1.全面考察指数的正负、底数是否为零等情况。* 2.写出指数的二进制表达,例如13表达为二进制1101。* 3.举例:10^1101 = 10^0001*10^0100*10^1000。* 4.通过&1和>>1来逐位读取1101,为1时将该位代表的乘数累乘到最终结果。# -*- coding:utf-8 -*...原创 2019-04-09 10:09:32 · 368 阅读 · 0 评论 -
Python剑指>>数组中查找重复数字
题目在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。思路:将数组排序,然后遍历数组就可以找到 因为数组中的数字是从0-n-1,排序后每个数字和它对应的下标相等,因此我们...原创 2019-04-09 17:56:07 · 3246 阅读 · 0 评论 -
Python剑指>>输入一个链表,反转链表后,输出新链表的表头。
题目描述输入一个链表,反转链表后,输出新链表的表头。分析:先将当前节点数对应的下一个节点数保存下来tmp=pHead.next,然后将上个节点数last赋值给pHead.next(初始last为None)。当前节点pHead赋值给last(成为上一个节点),最后将下一个节点tmp赋值给pHead(成为当前结点)。# -*- coding:utf-8 -*-# cl...原创 2019-04-13 00:15:23 · 947 阅读 · 0 评论 -
Python剑指>>正则表达式匹配
题目描述请实现一个函数用来匹配包括'.'和'*'的正则表达式。模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"ab*ac*a"匹配,但是与"aa.a"和"ab*a"均不匹配分析:每次分别在s和pattern中取一个字符进行匹配,如果匹配,则匹配下一个...原创 2019-04-10 09:24:16 · 148 阅读 · 0 评论 -
Python剑指>>合并两个排序的链表
题目描述输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。思路1:设置一个头结点,存合并链表 循环取出相对较小的加到节点尾部 合并没有循环完的链表# -*- coding:utf-8 -*-# class ListNode:# def __init__(self, x):# self.val = x# ...原创 2019-04-14 00:36:18 · 138 阅读 · 0 评论