剑指offer
Amy_mm
https://github.com/xuman-Amy
积跬步,至千里
展开
-
二分查找 找到 旋转数组的最小数字.
利用二分查找 找到 旋转数组的最小数字. 分为两个情况,简单的情况是#153,数组中没有重复数字,直接判断中间mid值与左右的大小关系。 复杂的情况是含有重复数字,利用顺序查找。 leetcode #153 class Solution(object): def findMin(self, nums): """ :type nums: List[int] ...原创 2019-03-01 20:22:23 · 254 阅读 · 0 评论 -
python实现八大排序算法
明早去面试,今天复习了一下八大排序,把总结以及代码实现记录一下~~~ 希望明天面试顺利!! **结合本科的数据结构课件。 ** 可以参考链接[https://www.cnblogs.com/wuxinyan/p/8615127.html] 插入排序 1. 【直接插入排序】 原理 依次遍历数组中的每个元素,当插入到第 i 个位置时,前边的所有元素V[0] V[1]··· V[i-1]都已经排序完毕。...原创 2018-12-28 16:47:47 · 417 阅读 · 0 评论 -
二叉树遍历的递归和非递归实现
参考博客 【前序遍历】 leetcode #144 【原理】根左右 【方法1】 递归实现,按照根左右的顺序递归调用前序遍历函数 # 树节点的定义 #class TreeNode: # def __init__(self, x): # self.val = x # self.left = left # self.right = right class ...原创 2019-02-24 22:08:18 · 273 阅读 · 0 评论 -
面试题5:两个栈实现一个队列
题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 push: 直接放到stack1中 pop: 如果stack2中有值,就pop出来;如果没有值,就把stack1中的值全部pop到stack2中,然后stack2pop一个值 # -*- coding:utf-8 -*- class Solution: def __init__(self): ...原创 2019-04-06 17:42:29 · 225 阅读 · 0 评论 -
面试题4 重建二叉树
面试题4 重建二叉树 题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 解题报告 前序遍历根左右,中序遍历左根右。 1、现在前序中找到root的值,也就是pre[0] 2、在中序中找到此值,并返回...原创 2019-04-06 17:41:52 · 188 阅读 · 0 评论 -
八皇后问题
leetcode # 51 N皇后问题 本质上是一个全排列问题 class Solution(object): def solveNQueens(self, n): if n <= 0: return '' # 肯定是一行一个皇后,一列也是一个皇后 # 所以可以定义一个一维数组,索引是行号,值是列号。比如nums...原创 2019-03-22 09:48:52 · 250 阅读 · 0 评论 -
剑指offer
先放上总的git仓库。具体讲解思路后续补充 剑指offer git原创 2019-03-12 11:25:34 · 159 阅读 · 0 评论 -
面试题3 从头到尾打印链表
从头到尾打印链表 题目简单,算法上是使用一个栈就行了,先进后出。 # -*- coding:utf-8 -*- # class ListNode: # def __init__(self, x): # self.val = x # self.next = None class Solution: # 返回从尾部到头部的列表值序列,例如[1,2,3]...原创 2019-03-14 09:33:27 · 164 阅读 · 0 评论 -
面试题1 二维数组中的查找
题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 leetcode #240 解题: 首先判断是不是空数组,空数组做出异常处理。 假设数组是n*m,先从数组的(0,m-1)也就是右上角的元素开始比较, if target < arr[i]...原创 2019-03-14 09:01:10 · 255 阅读 · 0 评论 -
剑指offer python解题
文章目录回溯法机器人的运动范围矩阵中的路径 回溯法 67 机器人的运动范围 66 矩阵中的路径 机器人的运动范围 # 67 机器人的运动范围 # -*- coding:utf-8 -*- import sys class Solution: def movingCount(self, threshold, rows, cols): # write code here ...原创 2019-07-18 14:16:02 · 1369 阅读 · 0 评论