剑指offer python实现
skyHdd
deep work,simple life
展开
-
【A-剑指offer】5-替换空格 python实现
参考书籍: 数据结构与算法实现 裘宗燕 参考博客: https://www.jb51.net/article/65286.htm原创 2018-08-23 09:10:53 · 232 阅读 · 0 评论 -
【A-剑指offer】16-计算数值的整数次方 python实现
题目表述: 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。不考虑大数的情况 解题思路: 递归求解,时间复杂度为O(n) ''' Creat by HuangDandan 2018-08-23 dandanhuang@sjtu.edu.cn 递推计算数值的整数次方 题目表述: 给定一个double类型的浮点数base...原创 2018-08-23 13:31:59 · 799 阅读 · 0 评论 -
【A-剑指offer】3-找出数组中的重复数字 python实现
''' Creat by HuangDandan 2018-08-18 题目描述:在一个长度为n的数组里的所有数字都在0~n-1的范围内,数组中某些数字是重复的, 但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数字中任意一个重复的数字。 例如,如果输入长度为7的数字{2, 3, 1, 0, 2, 5, 3},那么对应的输出是重复的数字2或者3 解题思路: 思路1-直接对数组进行排序...原创 2018-08-18 15:09:16 · 2699 阅读 · 0 评论 -
【A-剑指offer】10-斐波那契数列 python实现
''' Creat by HuangDandan 2018-08-23 dandanhuang@sjtu.edu.cn 介绍了三种方法求斐波那契额数列值 Fabonacci0 自上而下的递归,存在的重复的结点,时间复杂度随着n的增加指数增长,效率很低 Fabonacci1 自下而上的递归,时间复杂度为O(n) Fabonacci2 利用斐波那契数组的特性进行数列求解,直接求解时间复杂度O(n) F...原创 2018-08-23 19:59:29 · 657 阅读 · 0 评论 -
【A-剑指offer】04-二维数组中的查找特定数字 python实现
题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 解题技巧(对于这个特殊的矩阵): 1-每次查找二维数组的右上角元素,进行区域的缩减(也可以查找左下角的元素) 1.1-选择右上角元素: if 查找的数字 == 二维数组的右上角元素,找...原创 2018-08-24 09:46:40 · 1709 阅读 · 0 评论 -
【A-剑指offer】 python实现 3-找出数组中的重复数字 不修改原先数组
二分法排序 这里写代码片原创 2018-08-24 23:59:25 · 956 阅读 · 0 评论 -
【A-剑指offer】38-字符串的全排列 python实现
字符串的全排列 题目描述: 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。 输入描述:输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。 难点在于:递推的实现 递推的思想(从上至下): 把字符串分为两个部分: 1-字符串的第一个字...原创 2018-08-25 10:36:14 · 2565 阅读 · 0 评论