Geek

博客园 首页 新随笔 联系 订阅 管理

2021年1月25日 #

摘要: 中序遍历 给出一棵二叉树,返回这棵树的中序遍历 例如: 给出的二叉树为{1,#,2,3}, typedef TreeNode Node; class Solution { public: /** * * @param root TreeNode类 * @return int整型vector */ v 阅读全文
posted @ 2021-01-25 19:27 .geek 阅读(53) 评论(0) 推荐(0) 编辑

摘要: 恢复BST 题目描述 二叉搜索树(BST)中的两个节点被错误地交换了, 请在不改变树的结构的情况下恢复这棵树。 备注; 用O(n)的空间解决这个问题的方法太暴力了,你能设计一个常数级空间复杂度的算法么? 示例 1: 输入: [1,3,null,null,2] 1 / 3 2 输出: [3,1,nul 阅读全文
posted @ 2021-01-25 18:15 .geek 阅读(290) 评论(0) 推荐(0) 编辑

摘要: 单链表转二叉树 题目描述 给定一个单链表,其中的元素按升序排序,请将它转化成平衡二叉搜索树(BST) 示例1 输入 复制 {-1,0,1,2} 返回值 复制 {1,0,2,-1} 说明:本题目包含复杂数据结构TreeNode、ListNode,点此查看相关信息 typedef TreeNode No 阅读全文
posted @ 2021-01-25 17:16 .geek 阅读(121) 评论(0) 推荐(0) 编辑

摘要: 题目描述 给定两个单词(初始单词和目标单词)和一个单词字典,请找出所有的从初始单词到目标单词的最短转换序列的长度: 每一次转换只能改变一个单词 每一个中间词都必须存在单词字典当中 例如: 给定的初始单词start="red", 目标单词end ="tax"。 单词字典dict =["ted","te 阅读全文
posted @ 2021-01-25 14:53 .geek 阅读(212) 评论(0) 推荐(0) 编辑

摘要: 题目描述 现在有一个仅包含‘X’和‘O’的二维板,请捕获所有的被‘X’包围的区域 捕获一个被包围区域的方法是将被包围区域中的所有‘O’变成‘X’ 例如 X X X X X O O X X X O X O X X X 执行完你给出的函数以后,这个二维板应该变成: X X X X X X X X X X 阅读全文
posted @ 2021-01-25 13:39 .geek 阅读(71) 评论(0) 推荐(0) 编辑

摘要: 题目描述 给出一个字符串s,分割s使得分割出的每一个子串都是回文串 计算将字符串s分割成回文分割结果的最小切割数 例如:给定字符串s="aab", 返回1,因为回文分割结果["aa","b"]是切割一次生成的。 示例1 输入 复制 "aab" 返回值 复制 1 class Solution { pu 阅读全文
posted @ 2021-01-25 12:41 .geek 阅读(98) 评论(0) 推荐(0) 编辑

摘要: 链表重排 #define Node ListNode #define null NULL class Solution { public: void reorderList(ListNode *head) { if(head == null||head->next==null) return ; N 阅读全文
posted @ 2021-01-25 01:28 .geek 阅读(37) 评论(0) 推荐(0) 编辑

摘要: 题目描述 使用插入排序对链表进行排序。 示例1 输入 复制 {30,20,40} 返回值 复制 {20,30,40} #define Node ListNode #define null NULL class Solution { public: /** * * @param head ListNo 阅读全文
posted @ 2021-01-25 00:45 .geek 阅读(112) 评论(0) 推荐(0) 编辑

摘要: 题目描述 在O(n log n)的时间内使用常数级空间复杂度对链表进行排序。 示例1 输入 复制 {30,20,40} 返回值 复制 {20,30,40} 说明:本题目包含复杂数据结构ListNode,点此查看相关信息 #define null NULL #define Node ListNode 阅读全文
posted @ 2021-01-25 00:34 .geek 阅读(68) 评论(0) 推荐(0) 编辑