
刷题之剑指offer
睡着了都在敲代码
这个作者很懒,什么都没留下…
展开
-
备战秋招——记录自己学习的第七天(刷题之剑指offer——旋转数组最小值、斐波那契数列、跳台阶(变态)、矩形覆盖)
第一题 旋转数组的最小数字 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 先来一个python的bug方法: class Solution: def minNu...原创 2019-06-11 12:46:16 · 131 阅读 · 0 评论 -
备战秋招——记录自己学习的第五天(刷题之剑指offer——二维数组查找、空格替换、打印链表、重建二叉树、用栈实现队列)
题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 代码实现如下: # -*- coding:utf-8 -*- class Solution: # array 二维列表 def Find(self, target, array):...原创 2019-06-04 23:42:03 · 183 阅读 · 0 评论 -
备战华为,算法题练手(一)
1.为了得到一个数的"相反数",我们将这个数的数字顺序颠倒,然后再加上原先的数得到"相反数"。例如,为了得到1325的"相反数",首先我们将该数的数字顺序颠倒,我们得到5231,之后再加上原先的数,我们得到5231+1325=6556.如果颠倒之后的数字有前缀零,前缀零将会被忽略。例如n = 100, 颠倒之后是1 方法一: a = str(input())#123 b = a[::-1]#321...原创 2019-09-10 23:37:33 · 303 阅读 · 0 评论