
Leetcode
文章平均质量分 78
努力写代码的小菜鸟
这个作者很懒,什么都没留下…
展开
-
二叉树的递归遍历与非递归遍历及Python实现--力扣94/144/145
前言 昨天在看Leetcode上《二叉树》部分的书籍,做了四道关于二叉树的遍历的题目,在此总结一下二叉树的三种遍历方式及其实现。 二叉树的遍历 二叉树的遍历可以分为:前序遍历、中序遍历、后序遍历、层次遍历四种。以下面这一个二叉树为例: 前序遍历:首先访问二叉树的根节点,再访问左子树,最后访问右子树。前序遍历的结果为:F-C-A-D-B-E-H-G-M 中序遍历:首先访问二叉树的左子树,再访问根节点,最后访问右子树。中序遍历的结果为:A-C-B-D-F-H-E-M-G 后序遍历:首先访问二叉树的左子树,原创 2021-05-12 10:51:55 · 385 阅读 · 0 评论 -
列表排序、分治算法、Moore投票--力扣169记录
列表排序、分治算法、Moore投票–力扣169记录 题目描述 给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示例 1: 输入:[3,2,3] 输出:3 示例 2: 输入:[2,2,1,1,1,2,2] 输出:2 进阶: 尝试设计时间复杂度为 O(n)、空间复杂度为 O(1) 的算法解决此问题。 列表排序 Python中自带了列表的排序函数sort,使用sort实现的排序,原创 2021-05-11 10:07:29 · 337 阅读 · 0 评论 -
位运算及Python实现-力扣136
位运算及Python实现 前言 刷leetcode的第136题时遇到了一种用位运算实现的方法,然而大一学过的东西到现在都有些模糊,于是补充回忆了一下位运算相关的知识 题目描述: 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 示例 1: 输入: [2,2,1] 输出: 1 示例 2: 输入: [4,1,2,1,2] 输出: 4 解题思路: 使用 **位运算(异或)**原创 2021-05-11 09:34:55 · 1012 阅读 · 0 评论