题目 Given two binary strings, return their sum (also a binary string). For example, a = "11" b = "1" Return "100". 分析 一个简单的字符串相加,该题目要注意两点: 字符位的求和计算,必须转换为整型,即: 如下利用'0'字符作为中间转换,才得到正确结果. int temp = (a[i]-'0') + (b[i]-'0'); char c…
题目 Given a non-negative integer num, repeatedly add all its digits until the result has only one digit. For example: Given num = 38, the process is like: 3 + 8 = 11, 1 + 1 = 2. Since 2 has only one digit, return it. Follow up: Could you do it without…
题目 Given inorder and postorder traversal of a tree, construct the binary tree. Note: You may assume that duplicates do not exist in the tree. Show Tags Show Similar Problems 分析 跟上一道题同样的道理. AC代码 class Solution { public: template <typename Iter> TreeN…
题目 Given preorder and inorder traversal of a tree, construct the binary tree. Note: You may assume that duplicates do not exist in the tree. 分析 给定一颗二叉树的前序和中序遍历序列,求该二叉树. 我们手动做过很多这样的题目,掌握了其规则~ 前序遍历第一个元素为树的root节点,然后在中序序列中查找该值,元素左侧为左子树,右侧为右子树: 求出左子树个数cou…
题目 Given n, how many structurally unique BST's (binary search trees) that store values 1-n? For example, Given n = 3, there are a total of 5 unique BST's. 分析 此题与上题本质相同,LeetCode 95 Unique Binary Search Trees要求得到全部二叉查找树,打印其层序遍历序列. 而此题,只要求元素 [1,n] 能构成的二…
题目: You are given two linked lists representing two non-negative numbers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return it as a linked list. Input: (2 -> 4 -> 3) + (5 -> 6 -&…
题目: Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never differ by more than 1. 思路: 题目的大意是[判断一个二叉树是不是平衡二叉树 首先了解…
题目 Two elements of a binary search tree (BST) are swapped by mistake. Recover the tree without changing its structure. Note: A solution using O(n) space is pretty straight forward. Could you devise a constant space solution? 分析 给定一颗二叉排序树,它的两个节点被交换,要求…