数据结构
張濤
大三 后端
https://github.com/ZTCooper
展开
-
《剑指offer》面试题25:合并两个排序的链表
题目描述 知识点:列表、递归 思路一:递归 pMergedHead指向头节点值小的链表头,递归对剩下两段链表合并 # -*- coding:utf-8 -*- class ListNode: def __init__(self, x): self.val = x self.next = None class Solution...原创 2020-02-09 15:03:30 · 178 阅读 · 0 评论 -
《剑指offer》面试题32:从上往下打印二叉树
题目描述 层次遍历: 二叉树的层次遍历,需要借助队列,根节点入队,每打印一个节点,一个节点出队,并将其左右子树入队,直到队列为空原创 2020-02-07 22:42:42 · 148 阅读 · 0 评论 -
《剑指offer》面试题22:链表中倒数第k个节点
题目描述 使用前后指针即可,前指针先走k-1步,然后两个指针一起移动,当前指针指向最后一个节点,后指针原创 2020-02-07 22:29:37 · 153 阅读 · 0 评论 -
《剑指offer》面试题10:斐波那契数列、青蛙跳台阶、矩形覆盖
题目描述 思路二:原创 2020-02-05 14:48:47 · 185 阅读 · 0 评论 -
《剑指offer》面试题11:旋转数组的最小数字
题目描述 知识点:二分查找 思路一: 顺序遍历,当后一个数比前一个数小时,则为最小数 # -*- coding:utf-8 -*- class Solution: def minNumberInRotateArray(self, rotateArray): # write code here for i in range(len(rotateArray)):...原创 2020-02-05 14:09:33 · 113 阅读 · 0 评论 -
《剑指offer》面试题9:用两个栈实现一个队列
题目描述 思路: 两个栈Stack_A,Stack_B push: 无论什么情况都压入A pop: 当B中有元素时:直接栈顶出栈; 当B为空栈时:将A中元素逐个出栈压入B,B栈顶再出栈 代码: # -*- coding:utf-8 -*- class Solution: def __init__(self): self.Stack_A = [] self.S...原创 2020-02-05 10:56:23 · 143 阅读 · 0 评论 -
《剑指offer》面试题4:二维数组中的查找
题目描述 最容易想到的思路,行列双重遍历查找 # -*- coding:utf-8 -*- class Solution: # array 二维列表 def Find(self, target, array): # write code here for row in array: for num in row: ...原创 2020-02-04 21:24:41 · 124 阅读 · 0 评论